Type::Tiny::Manual::AllTypes(3pm)

Type::Tiny::Manual::AllTypes3pm

Alphabetical list of all type constraints bundled with type::tiny

Manual

The following is a list of type constraints bundled with Type::Tiny, with very brief descriptions. For more information, see the type library's documentation, and the test cases in "t/21-types/".

GitHub link: <https://github.com/tobyink/p5-type-tiny/tree/master/t/21-types>.

•

Any in Types::Standard

Anything. Absolutely anything.

•

ArrayLike [parameterizable] in Types::TypeTiny

Arrayrefs and objects overloading arrayfication.

•

ArrayRef [parameterizable] in Types::Standard

Arrayrefs.

•

Bool [has coercion] in Types::Standard

Booleans; the numbers or strings "0" and "1", the empty string, or undef.

•

BoolLike in Types::TypeTiny

Similar to Bool, but without coercions, and accepts objects overloading "bool".

•

ClassName in Types::Standard

Any loaded package name.

•

CodeLike in Types::TypeTiny

Coderefs and objects overloading coderefification.

•

CodeRef in Types::Standard

Coderefs.

•

ConsumerOf [parameterizable] in Types::Standard

An object that DOES a particular role.

•

CycleTuple [parameterizable] in Types::Standard

An arrayref with a repeating pattern of constraints on its values.

•

Defined in Types::Standard

Any value other than undef.

•

DelimitedStr [parameterizable] in Types::Common::String

A comma-delimited or other delimited string.

•

Dict [parameterizable] in Types::Standard

A hashref with constraints on each of its values.

•

Enum [parameterizable] in Types::Standard

A string from an allowed set of strings.

•

_ForeignTypeConstraint in Types::TypeTiny

A coderef or an object which Type::Tiny knows how to convert into a Type::Tiny instance. (Yes, the name of this type starts with an underscore.)

•

FileHandle in Types::Standard

A reference where Scalar::Util::openhandle returns true, or a blessed object in the IO::Handle class.

•

GlobRef in Types::Standard

Globrefs

•

HashLike [parameterizable] in Types::TypeTiny

Hashrefs and objects overloading hashrefification.

•

HashRef [parameterizable] in Types::Standard

Hashrefs.

•

HasMethods [parameterizable] in Types::Standard

An object that can do particular methods.

•

InstanceOf [parameterizable] in Types::Standard

An object that isa particular class.

•

Int in Types::Standard

A whole number, either positive, negative, or zero.

•

IntRange [parameterizable] in Types::Common::Numeric

An integer within a particular numeric range.

•

Item in Types::Standard

Any single item; effectively the same as Any.

•

LaxNum in Types::Standard

A number; relaxed constraint that allows "inf".

•

LowerCaseSimpleStr [has coercion] in Types::Common::String

A string less than 256 characters long with no line breaks or uppercase letters.

•

LowerCaseStr [has coercion] in Types::Common::String

A string with no uppercase letters.

•

Map [parameterizable] in Types::Standard

A hashref with a constraint for the values and keys.

•

Maybe [parameterizable] in Types::Standard

When parameterized, the same as its parameter, but also allows undef.

•

NegativeInt in Types::Common::Numeric

An integer below 0.

•

NegativeNum in Types::Common::Numeric

A number below 0.

•

NegativeOrZeroInt in Types::Common::Numeric

An integer below 0, or 0.

•

NegativeOrZeroNum in Types::Common::Numeric

A number below 0, or 0.

•

NonEmptySimpleStr in Types::Common::String

A string with more than 0 but less than 256 characters with no line breaks.

•

NonEmptyStr in Types::Common::String

A string with more than 0 characters.

•

Num in Types::Standard

The same as LaxNum or StrictNum depending on environment.

•

NumericCode [has coercion] in Types::Common::String

A string containing only digits.

•

NumRange [parameterizable] in Types::Common::Numeric

A number within a particular numeric range.

•

Object in Types::Standard

A blessed object.

•

Optional [parameterizable] in Types::Standard

Used in conjunction with Dict, Tuple, or CycleTuple.

•

OptList in Types::Standard

An arrayref of arrayrefs, where each of the inner arrayrefs are two values, the first value being a string.

•

Overload [parameterizable] in Types::Standard

An overloaded object.

•

Password in Types::Common::String

A string at least 4 characters long and less than 256 characters long with no line breaks.

•

PositiveInt in Types::Common::Numeric

An integer above 0.

•

PositiveNum in Types::Common::Numeric

A number above 0.

•

PositiveOrZeroInt in Types::Common::Numeric

An integer above 0, or 0.

•

PositiveOrZeroNum in Types::Common::Numeric

An number above 0, or 0.

•

Ref [parameterizable] in Types::Standard

Any reference.

•

RegexpRef in Types::Standard

A regular expression.

•

RoleName in Types::Standard

Any loaded package name where there is no `new` method.

•

ScalarRef [parameterizable] in Types::Standard

Scalarrefs.

•

SimpleStr in Types::Common::String

A string with less than 256 characters with no line breaks.

•

SingleDigit in Types::Common::Numeric

A single digit number. This includes single digit negative numbers!

•

Slurpy [parameterizable] in Types::Standard

Used in conjunction with Dict or Tuple.

•

Str in Types::Standard

A string.

•

StrictNum in Types::Standard

A number; strict constraint.

•

StringLike in Types::TypeTiny

Strings and objects overloading stringification.

•

StrLength [parameterizable] in Types::Common::String

A string with length in a particular range.

•

StrMatch [parameterizable] in Types::Standard

A string matching a particular regular expression.

•

StrongPassword in Types::Common::String

A string at least 4 characters long and less than 256 characters long with no line breaks and at least one non-alphabetic character.

•

Tied [parameterizable] in Types::Standard

A reference to a tied variable.

•

Tuple [parameterizable] in Types::Standard

An arrayref with constraints on its values.

•

TypeTiny [has coercion] in Types::TypeTiny

Blessed objects in the Type::Tiny class.

•

Undef in Types::Standard

undef.

•

UpperCaseSimpleStr [has coercion] in Types::Common::String

A string less than 256 characters long with no line breaks or lowercase letters.

•

UpperCaseStr [has coercion] in Types::Common::String

A string with no lowercase letters.

•

Value in Types::Standard

Any non-reference value, including undef.

The module Types::Common incorporates all of the above.

Next steps

Here's your next step:

•

Type::Tiny::Manual::Policies

Policies related to Type::Tiny development.

Disclaimer of warranties

THIS PACKAGE IS PROVIDED "AS IS" AND WITHOUT ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.

Releases

4 releases since Debian 11 (Bullseye); the text changed 3 times.

  1. 11
  2. 12
  3. 13
  4. Arch

Author

Toby Inkster <[email protected]>.

From perl-type-tiny 2.010001-1 in Arch Linux 2026-11-01. Parsed by carta from the page's man source.