class Sus::Be::And
def &(other)
def &(other) And.new(@predicates + [other]) end
def call(assertions, subject)
def call(assertions, subject) @predicates.each do |predicate| predicate.call(assertions, subject) end end
def initialize(predicates)
def initialize(predicates) @predicates = predicates end
def print(output)
def print(output) @predicates.each_with_index do |predicate, index| if index > 0 output.write(" and ", :reset) end predicate.print(output) end end
def |(other)
def |(other) Or.new(self, other) end