Strict

All types in the strict category are constrained by a type-check that is applied to an input which makes sure that the input is an instance of the primitive:

Types::Strict::Integer[1] # => 1
Types::Strict::Integer['1'] # => raises Dry::Types::ConstraintError

octocatEdit on GitHub