Methods
Attributes
[RW] | glob | |
[R] | path |
Class Public methods
Source: show
# File railties/lib/rails/paths.rb, line 129 def initialize(root, current, *paths) options = paths.last.is_a?(::Hash) ? paths.pop : {} super(paths.flatten) @current = current @root = root @glob = options[:glob] options[:autoload_once] ? autoload_once! : skip_autoload_once! options[:eager_load] ? eager_load! : skip_eager_load! options[:autoload] ? autoload! : skip_autoload! options[:load_path] ? load_path! : skip_load_path! end
Instance Public methods
Source: show
# File railties/lib/rails/paths.rb, line 143 def children keys = @root.keys.select { |k| k.include?(@current) } keys.delete(@current) @root.values_at(*keys.sort) end
Returns all expanded paths but only if they exist in the filesystem.
Source: show
# File railties/lib/rails/paths.rb, line 193 def existent expanded.select { |f| File.exists?(f) } end
Source: show
# File railties/lib/rails/paths.rb, line 197 def existent_directories expanded.select { |d| File.directory?(d) } end
Expands all paths against the root and return all unique values.
Also aliased as: to_a
Source: show
# File railties/lib/rails/paths.rb, line 174 def expanded raise "You need to set a path root" unless @root.path result = [] each do |p| path = File.expand_path(p, @root.path) if @glob result.concat Dir[File.join(path, @glob)].sort else result << path end end result.uniq! result end
Source: show
# File railties/lib/rails/paths.rb, line 201 def paths ActiveSupport::Deprecation.warn "paths is deprecated. Please call expand instead." expanded end