lib/code/node/not.rb in code-ruby-0.10.4 vs lib/code/node/not.rb in code-ruby-0.11.0
- old
+ new
@@ -2,16 +2,20 @@
class Code
class Node
class Not < Node
def initialize(parsed)
- @operator = parsed.delete(:operator)
- @right = Node::Statement.new(parsed.delete(:right))
- super(parsed)
+ return if parsed.blank?
+ @operator = parsed.delete(:operator).presence
+ @right = Node::Statement.new(parsed.delete(:right).presence)
end
def evaluate(**args)
- @right.evaluate(**args).call(operator: @operator, arguments: [], **args)
+ if @right
+ @right.evaluate(**args).call(operator: @operator, **args)
+ else
+ Object::Nothing.new
+ end
end
end
end
end