Type::Tiny::Union - union type constraints
This module is covered by the Type-Tiny stability policy.
Union type constraints.
This package inherits from Type::Tiny; see that for most
documentation. Major differences are listed below:
- "type_constraints"
- Arrayref of type constraints.
When passed to the constructor, if any of the type constraints
in the union is itself a union type constraint, this is
"exploded" into the new union.
- "constraint"
- Unlike Type::Tiny, you cannot pass a constraint coderef to the
constructor. Instead rely on the default.
- "inlined"
- Unlike Type::Tiny, you cannot pass an inlining coderef to the
constructor. Instead rely on the default.
- "parent"
- Unlike Type::Tiny, you cannot pass an inlining coderef to the
constructor. A parent will instead be automatically calculated.
- "coercion"
- You probably do not pass this to the constructor. (It's not currently
disallowed, as there may be a use for it that I haven't thought of.)
The auto-generated default will be a Type::Coercion::Union
object.
- "find_type_for($value)"
- Returns the first individual type constraint in the union which
$value passes.
- "stringifies_to($constraint)"
- See Type::Tiny::ConstrainedObject.
- "numifies_to($constraint)"
- See Type::Tiny::ConstrainedObject.
- "with_attribute_values($attr1 => $constraint1, ...)"
- See Type::Tiny::ConstrainedObject.
- •
- Arrayrefification calls
"type_constraints".
Please report any bugs to
<https://github.com/tobyink/p5-type-tiny/issues>.
Type::Tiny::Manual.
Type::Tiny.
Toby Inkster <tobyink@cpan.org>.
This software is copyright (c) 2013-2014, 2017-2021 by Toby Inkster.
This is free software; you can redistribute it and/or modify it
under the same terms as the Perl 5 programming language system itself.
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.