Class: Liquid::Template::TagRegistry
- Inherits:
-
Object
- Object
- Liquid::Template::TagRegistry
- Includes:
- Enumerable
- Defined in:
- lib/liquid/template.rb
Instance Method Summary collapse
- #[](tag_name) ⇒ Object
- #[]=(tag_name, klass) ⇒ Object
- #delete(tag_name) ⇒ Object
- #each(&block) ⇒ Object
-
#initialize ⇒ TagRegistry
constructor
A new instance of TagRegistry.
Constructor Details
#initialize ⇒ TagRegistry
Returns a new instance of TagRegistry.
24 25 26 27 |
# File 'lib/liquid/template.rb', line 24 def initialize @tags = {} @cache = {} end |
Instance Method Details
#[](tag_name) ⇒ Object
29 30 31 32 33 34 |
# File 'lib/liquid/template.rb', line 29 def [](tag_name) return nil unless @tags.key?(tag_name) return @cache[tag_name] if Liquid.cache_classes lookup_class(@tags[tag_name]).tap { |o| @cache[tag_name] = o } end |
#[]=(tag_name, klass) ⇒ Object
36 37 38 39 |
# File 'lib/liquid/template.rb', line 36 def []=(tag_name, klass) @tags[tag_name] = klass.name @cache[tag_name] = klass end |
#delete(tag_name) ⇒ Object
41 42 43 44 |
# File 'lib/liquid/template.rb', line 41 def delete(tag_name) @tags.delete(tag_name) @cache.delete(tag_name) end |
#each(&block) ⇒ Object
46 47 48 |
# File 'lib/liquid/template.rb', line 46 def each(&block) @tags.each(&block) end |