module Filepath::SearchMethods

Public Instance Methods

directories(recursive = false) click to toggle source
# File lib/filepath/filepath.rb, line 957
def directories(recursive = false)
        entries('*', recursive).select_entries(:directory)
end
entries(pattern = '*', recursive = false) click to toggle source
# File lib/filepath/filepath.rb, line 921
def entries(pattern = '*', recursive = false)
        if !self.directory?
                raise Errno::ENOTDIR.new(self)
        end

        glob = self
        glob /= '**' if recursive
        glob /= pattern

        raw_entries = Dir.glob(glob)
        entries = FilepathList.new(raw_entries)

        return entries
end
Also aliased as: glob
files(recursive = false) click to toggle source
# File lib/filepath/filepath.rb, line 949
def files(recursive = false)
        entries('*', recursive).select_entries(:file)
end
find(pattern = nil, recursive = true, &block) click to toggle source
# File lib/filepath/filepath.rb, line 937
def find(pattern = nil, recursive = true, &block)
        if !pattern.nil? && pattern.respond_to?(:to_str)
                return entries(pattern, recursive)
        end

        if !block_given?
                block = proc { |e| e =~ pattern }
        end

        return entries('*', true).select { |e| block.call(e) }
end
glob(pattern = '*', recursive = false)
Alias for: entries