Class: ActionView::FileSystemResolver
- Defined in:
- lib/action_view/template/resolver.rb
Overview
A resolver that loads files from the filesystem.
Direct Known Subclasses
Instance Attribute Summary collapse
-
#path ⇒ Object
readonly
Returns the value of attribute path.
Instance Method Summary collapse
-
#all_template_paths ⇒ Object
:nodoc:.
-
#built_templates ⇒ Object
:nodoc:.
- #clear_cache ⇒ Object
- #eql?(resolver) ⇒ Boolean (also: #==)
-
#initialize(path) ⇒ FileSystemResolver
constructor
A new instance of FileSystemResolver.
- #to_s ⇒ Object (also: #to_path)
Methods inherited from Resolver
Constructor Details
#initialize(path) ⇒ FileSystemResolver
Returns a new instance of FileSystemResolver.
94 95 96 97 98 99 100 |
# File 'lib/action_view/template/resolver.rb', line 94 def initialize(path) raise ArgumentError, "path already is a Resolver class" if path.is_a?(Resolver) @unbound_templates = Concurrent::Map.new @path_parser = PathParser.new @path = File.(path) super() end |
Instance Attribute Details
#path ⇒ Object (readonly)
Returns the value of attribute path.
92 93 94 |
# File 'lib/action_view/template/resolver.rb', line 92 def path @path end |
Instance Method Details
#all_template_paths ⇒ Object
:nodoc:
118 119 120 121 122 123 124 125 |
# File 'lib/action_view/template/resolver.rb', line 118 def all_template_paths # :nodoc: paths = template_glob("**/*") paths.map do |filename| filename.from(@path.size + 1).remove(/\.[^\/]*\z/) end.uniq.map do |filename| TemplatePath.parse(filename) end end |
#built_templates ⇒ Object
:nodoc:
127 128 129 |
# File 'lib/action_view/template/resolver.rb', line 127 def built_templates # :nodoc: @unbound_templates.values.flatten.flat_map(&:built_templates) end |
#clear_cache ⇒ Object
102 103 104 105 106 |
# File 'lib/action_view/template/resolver.rb', line 102 def clear_cache @unbound_templates.clear @path_parser = PathParser.new super end |
#eql?(resolver) ⇒ Boolean Also known as: ==
113 114 115 |
# File 'lib/action_view/template/resolver.rb', line 113 def eql?(resolver) self.class.equal?(resolver.class) && to_path == resolver.to_path end |
#to_s ⇒ Object Also known as: to_path
108 109 110 |
# File 'lib/action_view/template/resolver.rb', line 108 def to_s @path.to_s end |