Class: Twig::Node::Expression::Array
- Defined in:
- lib/twig/node/expression/array.rb
Instance Attribute Summary
Attributes inherited from Base
#attributes, #lineno, #nodes, #source_context, #tag
Instance Method Summary collapse
- #add_element(value, key = nil) ⇒ Object
- #compile(compiler) ⇒ Object
- 
  
    
      #initialize(elements, lineno)  ⇒ Array 
    
    
  
  
  
    constructor
  
  
  
  
  
  
  
    A new instance of Array. 
Methods inherited from Base
#explicit_parentheses?, #set_explicit_parentheses
Methods inherited from Base
Constructor Details
#initialize(elements, lineno) ⇒ Array
Returns a new instance of Array.
| 7 8 9 10 11 | # File 'lib/twig/node/expression/array.rb', line 7 def initialize(elements, lineno) super(elements, {}, lineno) @index = -1 end | 
Instance Method Details
#add_element(value, key = nil) ⇒ Object
| 15 16 17 18 19 20 21 22 | # File 'lib/twig/node/expression/array.rb', line 15 def add_element(value, key = nil) if key.nil? @index += 1 key = Constant.new(@index, value.lineno) end nodes.add(key, value) end | 
#compile(compiler) ⇒ Object
| 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 | # File 'lib/twig/node/expression/array.rb', line 24 def compile(compiler) compiler. raw('{'). indent key_value_pairs.each do |key, value| compiler. subcompile(key). raw(' => '). subcompile(value). raw(', ') end compiler. outdent. raw('}') end |