Sha256: 1480d146a08d9f033b039713d1a58f4867fe12c5f5c1b39b83ccdfc074a67de5

Contents?: true

Size: 559 Bytes

Versions: 1

Compression:

Stored size: 559 Bytes

Contents

require "pathname"
require "filetree/simple_tree"

class Pathname
  alias :_parent :parent
  alias :_children :children
end

class FileTree < Pathname
  include SimpleTree

  attr_accessor :name, :id, :identifier

  def name
    @name ||= self.inspect
  end

  def id
    @id ||= self.inspect
  end

  def identifier
    @identifier ||= self.inspect
  end

  # See Pathname#parent

  def parent
    FileTree.new(_parent)
  end

  # See Pathname#children

  def children(*args)
    if self.directory?
      _children(*args)
    else
      []
    end
  end

end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
filetree-0.0.2 lib/filetree.rb