class Dry::Schema::Trace
def evaluate_predicates(predicates)
- Api: - private
def evaluate_predicates(predicates) predicates.flat_map do |predicate| if predicate.respond_to?(:call) predicate elsif predicate.is_a?(::Array) predicate.map { |pred| evaluate_predicates(pred).reduce(:&) }.reduce(:|) elsif predicate.is_a?(::Hash) predicate.map { |pred, *args| __send__(pred, *args) } else __send__(predicate) end end end