2017-04-04 17:35:15 +02:00
|
|
|
module Vool
|
|
|
|
# Logical Statements are guaranteed to return boolean
|
2017-04-08 11:10:42 +02:00
|
|
|
# either :and or :or, which may be written as && and ||
|
2017-04-04 17:35:15 +02:00
|
|
|
class LogicalStatement < Statement
|
|
|
|
attr_reader :name , :left , :right
|
|
|
|
|
|
|
|
def initialize(name , left , right)
|
|
|
|
@name , @left , @right = name , left , right
|
|
|
|
end
|
2017-04-08 11:10:42 +02:00
|
|
|
|
2018-07-03 21:18:19 +02:00
|
|
|
def to_s(depth = 0)
|
|
|
|
at_depth(depth , "#{left} #{name} #{right}")
|
|
|
|
end
|
|
|
|
|
2017-04-04 17:35:15 +02:00
|
|
|
end
|
|
|
|
end
|