class Dry::Logic::Result

def xor(other)

def xor(other)
  other_result = other.(input)
  value = success? ^ other_result.success?
  if other_result.wrapped?
    Result::Wrapped.new(input, value, rule)
  else
    Logic.Result(other_result.input, value, rule)
  end
end