Methods
- <<
- children
- concat
- each
- existent
- existent_directories
- expanded
- first
- last
- new
- paths
- push
- to_a
- to_ary
- unshift
Included Modules
Attributes
| [RW] | glob | 
Class Public methods
new(root, current, paths, options = {})
📝 Source code
# File railties/lib/rails/paths.rb, line 119
      def initialize(root, current, paths, options = {})
        @paths   = paths
        @current = current
        @root    = root
        @glob    = options[:glob]
        @exclude = options[:exclude]
        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!
      endInstance Public methods
<<(path)
              Also aliased as: push
            
          
          
          
          
            📝 Source code
# File railties/lib/rails/paths.rb, line 171
      def <<(path)
        @paths << path
      endchildren()
📝 Source code
# File railties/lib/rails/paths.rb, line 136
      def children
        keys = @root.keys.find_all { |k|
          k.start_with?(@current) && k != @current
        }
        @root.values_at(*keys.sort)
      endconcat(paths)
📝 Source code
# File railties/lib/rails/paths.rb, line 176
      def concat(paths)
        @paths.concat paths
      endeach(&block)
📝 Source code
# File railties/lib/rails/paths.rb, line 167
      def each(&block)
        @paths.each(&block)
      endexistent()
Returns all expanded paths but only if they exist in the filesystem.
📝 Source code
# File railties/lib/rails/paths.rb, line 220
      def existent
        expanded.select do |f|
          does_exist = File.exist?(f)
          if !does_exist && File.symlink?(f)
            raise "File #{f.inspect} is a symlink that does not point to a valid file"
          end
          does_exist
        end
      endexistent_directories()
📝 Source code
# File railties/lib/rails/paths.rb, line 231
      def existent_directories
        expanded.select { |d| File.directory?(d) }
      endexpanded()
Expands all paths against the root and return all unique values.
              Also aliased as: to_a
            
          
          
          
          
            📝 Source code
# File railties/lib/rails/paths.rb, line 201
      def expanded
        raise "You need to set a path root" unless @root.path
        result = []
        each do |path|
          path = File.expand_path(path, @root.path)
          if @glob && File.directory?(path)
            result.concat files_in(path)
          else
            result << path
          end
        end
        result.uniq!
        result
      endfirst()
📝 Source code
# File railties/lib/rails/paths.rb, line 143
      def first
        expanded.first
      endlast()
📝 Source code
# File railties/lib/rails/paths.rb, line 147
      def last
        expanded.last
      endpaths()
📝 Source code
# File railties/lib/rails/paths.rb, line 188
      def paths
        raise "You need to set a path root" unless @root.path
        map do |p|
          Pathname.new(@root.path).join(p)
        end
      endto_ary()
unshift(*paths)
📝 Source code
# File railties/lib/rails/paths.rb, line 180
      def unshift(*paths)
        @paths.unshift(*paths)
      end