module Finder::Find::Site
System location finder methods.
Constants
- DATA_PATH
System’s data path.
Public Instance Methods
data_path(match, options={})
click to toggle source
Search data path.
# File lib/finder/site.rb, line 77 def data_path(match, options={}) return [] if options[:from] Dir.glob(File.join(DATA_PATH, match)).uniq end
load_path(match, options={})
click to toggle source
Search load path for matching patterns.
@param [String] match
The file glob to match.
@param [Hash] options
Search options.
@option options [true,false] :absolute
Return absolute paths instead of relative to load path.
@return [Array<String>] List of paths.
# File lib/finder/site.rb, line 55 def load_path(match, options={}) return [] if options[:from] options = valid_load_options(options) found = [] $LOAD_PATH.uniq.each do |path| list = Dir.glob(File.join(File.expand_path(path), match)) list = list.map{ |d| d.chomp('/') } # return absolute path unless relative flag if options[:relative] # the extra '' in File.join adds a '/' to the end of the path list = list.map{ |f| f.sub(File.join(path, ''), '') } end found.concat(list) end found end
path(match, options={})
click to toggle source
Search load path for matching patterns.
@param [String] match
The file glob to match.
@param [Hash] options
Search options.
@return [Array<String>] List of paths.
# File lib/finder/site.rb, line 28 def path(match, options={}) return [] if options[:from] found = [] $LOAD_PATH.uniq.map do |path| list = Dir.glob(File.join(File.expand_path(path), match)) list = list.map{ |d| d.chomp('/') } found.concat(list) end found.concat(data_path(match, options)) found end