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
links(recursive = false)
click to toggle source
# File lib/filepath/filepath.rb, line 953 def links(recursive = false) entries('*', recursive).select_entries(:link) end