Class: Kalc::Ast::Conditional

Inherits:
Object
  • Object
show all
Defined in:
lib/kalc/ast.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(condition, true_cond, false_cond) ⇒ Conditional

Returns a new instance of Conditional.



189
190
191
192
193
# File 'lib/kalc/ast.rb', line 189

def initialize(condition, true_cond, false_cond)
  @condition = condition
  @true_cond = true_cond
  @false_cond = false_cond
end

Instance Attribute Details

#conditionObject (readonly)

Returns the value of attribute condition.



187
188
189
# File 'lib/kalc/ast.rb', line 187

def condition
  @condition
end

#false_condObject (readonly)

Returns the value of attribute false_cond.



187
188
189
# File 'lib/kalc/ast.rb', line 187

def false_cond
  @false_cond
end

#true_condObject (readonly)

Returns the value of attribute true_cond.



187
188
189
# File 'lib/kalc/ast.rb', line 187

def true_cond
  @true_cond
end

Instance Method Details

#eval(context) ⇒ Object



195
196
197
# File 'lib/kalc/ast.rb', line 195

def eval(context)
  @condition.eval(context) ? @true_cond.eval(context) : @false_cond.eval(context)
end