class Dry::Logic::Operations::Set
def [](input)
def [](input) rules.map { |rule| rule[input] }.all? end
def ast(input = Undefined)
def ast(input = Undefined) [type, rules.map { |rule| rule.ast(input) }] end
def call(input)
def call(input) results = rules.map { |rule| rule.(input) } success = results.all?(&:success?) Result.new(success, id) do [type, results.select(&:failure?).map(&:to_ast)] end end
def to_s
def to_s "#{type}(#{rules.map(&:to_s).join(", ")})" end
def type
def type :set end