class Gobstones::Lang::TwoArgExpression
Attributes
left_expr[R]
right_expr[R]
Public Class Methods
evaluates_with(selector)
click to toggle source
# File lib/gobstones/lang/expressions/two_arg_expression.rb, line 8 def self.evaluates_with(selector) instance_eval do define_method :evaluate do |*args| context = args.first left_expr.evaluate(context).send(selector, right_expr.evaluate(context)) end define_method :to_s do "#{selector} expression" end end end
new(left, right)
click to toggle source
# File lib/gobstones/lang/expressions/two_arg_expression.rb, line 21 def initialize(left, right) @left_expr = left @right_expr = right end
Public Instance Methods
equality_attributes()
click to toggle source
# File lib/gobstones/lang/expressions/two_arg_expression.rb, line 26 def equality_attributes %i[left_expr right_expr] end