class Dry::Logic::Rule::Value

def call(input)

def call(input)
  if nulary?
    Logic.Result(predicate.(), self, input)
  else
    evaled = evaluate(input)
    result = apply(evaled)
    rule = result == true ? self : curry(evaled)
    Logic.Result(result, rule, input)
  end
end