class Build::Files::Directory
def self.join(*args)
def self.join(*args) self.new(Path.join(*args)) end
def each
def each return to_enum(:each) unless block_given? # We match both normal files with * and dotfiles with .?* Dir.glob(@root + "**/{*,.?*}") do |path| yield Path.new(path, @root) end end
def eql?(other)
def eql?(other) self.class.eql?(other.class) and @root.eql?(other.root) end
def hash
def hash @root.hash end
def include?(path)
def include?(path) # Would be true if path is a descendant of full_path. path.start_with?(@root) end
def initialize(root)
def initialize(root) @root = root end
def rebase(root)
def rebase(root) self.class.new(@root.rebase(root)) end
def root
def root @root end
def roots
def roots [root] end
def to_path
def to_path @root end
def to_s
def to_s to_str end
def to_str
def to_str @root.to_str end