Class: Wongi::Engine::DSL::Clause::Assign

Inherits:
Object
  • Object
show all
Defined in:
lib/wongi-engine/dsl/clause/assign.rb

Instance Method Summary collapse

Constructor Details

#initialize(variable, &body) ⇒ Assign

Returns a new instance of Assign.

Raises:



5
6
7
8
# File 'lib/wongi-engine/dsl/clause/assign.rb', line 5

def initialize variable, &body
  @variable, @body = variable, body
  raise DefinitionError, "#{variable} is not a variable" unless Template.variable?(variable)
end

Instance Method Details

#compile(context) ⇒ Object



10
11
12
# File 'lib/wongi-engine/dsl/clause/assign.rb', line 10

def compile context
  context.tap { |c| c.assignment_node(@variable, @body) }
end