Methods
C
E
F
L
N
P
T
Attributes
[R] path
[RW] glob
Class Public methods
new(root, current, *paths)
# 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
children()
# 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
existent()

Returns all expanded paths but only if they exist in the filesystem.

# File railties/lib/rails/paths.rb, line 193
def existent
  expanded.select { |f| File.exists?(f) }
end
existent_directories()
# File railties/lib/rails/paths.rb, line 197
def existent_directories
  expanded.select { |d| File.directory?(d) }
end
expanded()

Expands all paths against the root and return all unique values.

This method is also aliased as to_a
# 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
first()
# File railties/lib/rails/paths.rb, line 149
def first
  expanded.first
end
last()
# File railties/lib/rails/paths.rb, line 153
def last
  expanded.last
end
paths()
# File railties/lib/rails/paths.rb, line 201
def paths
  ActiveSupport::Deprecation.warn "paths is deprecated. Please call expand instead."
  expanded
end
to_a()