class Dry::Types::Constrained::Coercible
def try(input, &block)
- Api: - public
Other tags:
- See: Dry::Types::Constrained#try -
def try(input, &block) result = type.try(input) if result.success? validation = rule.(result.input) if validation.success? result else failure = failure(result.input, ConstraintError.new(validation, input)) block ? yield(failure) : failure end else block ? yield(result) : result end end