Class: Rails::Paths::Path
Relationships & Source Files | |
Super Chains via Extension / Inclusion / Inheritance | |
Instance Chain:
self,
::Enumerable
|
|
Inherits: | Object |
Defined in: | railties/lib/rails/paths.rb |
Constant Summary
::Enumerable
- Included
INDEX_WITH_DEFAULT
Class Method Summary
- .new(root, current, paths, options = {}) ⇒ Path constructor
Instance Attribute Summary
Instance Method Summary
- #<<(path) (also: #push)
- #children
- #concat(paths)
- #each(&block)
-
#existent
Returns all expanded paths but only if they exist in the filesystem.
- #existent_directories
-
#expanded
(also: #to_a)
Expands all paths against the root and return all unique values.
- #first
- #last
- #paths
-
#push(path)
Alias for #<<.
-
#to_a
Alias for #expanded.
- #to_ary
- #unshift(*paths)
::Enumerable
- Included
#compact_blank | Returns a new |
#exclude? | The negative of the |
#excluding | Returns a copy of the enumerable excluding the specified elements. |
#including | Returns a new array that includes the passed elements. |
#index_by | Convert an enumerable to a hash, using the block result as the key and the element as the value. |
#index_with | Convert an enumerable to a hash, using the element as the key and the block result as the value. |
#pick | Extract the given key from the first element in the enumerable. |
#pluck | Extract the given key from each element in the enumerable. |
#sum | Calculates a sum from the elements. |
#without | Alias for |
Constructor Details
.new(root, current, paths, options = {}) ⇒ Path
# File 'railties/lib/rails/paths.rb', line 116
def initialize(root, current, paths, = {}) @paths = paths @current = current @root = root @glob = [:glob] @exclude = [:exclude] [:autoload_once] ? autoload_once! : skip_autoload_once! [:eager_load] ? eager_load! : skip_eager_load! [:autoload] ? autoload! : skip_autoload! [:load_path] ? load_path! : skip_load_path! end
Instance Attribute Details
#glob (rw)
[ GitHub ]# File 'railties/lib/rails/paths.rb', line 114
attr_accessor :glob
Instance Method Details
#<<(path) Also known as: #push
[ GitHub ]# File 'railties/lib/rails/paths.rb', line 168
def <<(path) @paths << path end
#children
[ GitHub ]# File 'railties/lib/rails/paths.rb', line 133
def children keys = @root.keys.find_all { |k| k.start_with?(@current) && k != @current } @root.values_at(*keys.sort) end
#concat(paths)
[ GitHub ]#each(&block)
[ GitHub ]# File 'railties/lib/rails/paths.rb', line 164
def each(&block) @paths.each(&block) end
#existent
Returns all expanded paths but only if they exist in the filesystem.
#existent_directories
[ GitHub ]# File 'railties/lib/rails/paths.rb', line 228
def existent_directories .select { |d| File.directory?(d) } end
#expanded Also known as: #to_a
Expands all paths against the root and return all unique values.
#first
[ GitHub ]# File 'railties/lib/rails/paths.rb', line 140
def first .first end
#last
[ GitHub ]# File 'railties/lib/rails/paths.rb', line 144
def last .last end
#paths
[ GitHub ]#push(path)
Alias for #<<.
# File 'railties/lib/rails/paths.rb', line 171
alias :push :<<
#to_a
Alias for #expanded.
# File 'railties/lib/rails/paths.rb', line 232
alias to_a
#to_ary
[ GitHub ]# File 'railties/lib/rails/paths.rb', line 181
def to_ary @paths end