Class: Liquid::Template::TagRegistry

Inherits:
Object
  • Object
show all
Defined in:
lib/liquid/template.rb

Instance Method Summary collapse

Constructor Details

#initializeTagRegistry

Returns a new instance of TagRegistry.



27
28
29
30
# File 'lib/liquid/template.rb', line 27

def initialize
  @tags  = {}
  @cache = {}
end

Instance Method Details

#[](tag_name) ⇒ Object



32
33
34
35
36
37
# File 'lib/liquid/template.rb', line 32

def [](tag_name)
  return nil unless @tags.has_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



39
40
41
42
# File 'lib/liquid/template.rb', line 39

def []=(tag_name, klass)
  @tags[tag_name]  = klass.name
  @cache[tag_name] = klass
end

#delete(tag_name) ⇒ Object



44
45
46
47
# File 'lib/liquid/template.rb', line 44

def delete(tag_name)
  @tags.delete(tag_name)
  @cache.delete(tag_name)
end