# phpman > info > Type::Tiny::Union

[Type::Tiny](https://www.chedong.com/phpMan.php/perldoc/Type%3A%3ATiny/markdown)::[Union(3pm)](https://www.chedong.com/phpMan.php/man/Union/3pm/markdown)User Contributed Perl [DocumentatioType::Tiny](https://www.chedong.com/phpMan.php/perldoc/DocumentatioType%3A%3ATiny/markdown)::[Union(3pm)](https://www.chedong.com/phpMan.php/man/Union/3pm/markdown)

NAME
       [Type::Tiny::Union](https://www.chedong.com/phpMan.php/perldoc/Type%3A%3ATiny%3A%3AUnion/markdown) - union type constraints

STATUS
       This module is covered by the Type-Tiny stability policy.

DESCRIPTION
       Union type constraints.

       This package inherits from [Type::Tiny](https://www.chedong.com/phpMan.php/perldoc/Type%3A%3ATiny/markdown); see that for most documentation.
       Major differences are listed below:

   Attributes
       "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](https://www.chedong.com/phpMan.php/perldoc/Type%3A%3ATiny/markdown), you cannot pass a constraint coderef to the
           constructor.  Instead rely on the default.

       "inlined"
           Unlike [Type::Tiny](https://www.chedong.com/phpMan.php/perldoc/Type%3A%3ATiny/markdown), you cannot pass an inlining coderef to the
           constructor.  Instead rely on the default.

       "parent"
           Unlike [Type::Tiny](https://www.chedong.com/phpMan.php/perldoc/Type%3A%3ATiny/markdown), 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](https://www.chedong.com/phpMan.php/perldoc/Type%3A%3ACoercion%3A%3AUnion/markdown) object.

   Methods
       "find_type_for($value)"
           Returns the first individual type constraint in the union which
           $value passes.

       "stringifies_to($constraint)"
           See [Type::Tiny::ConstrainedObject](https://www.chedong.com/phpMan.php/perldoc/Type%3A%3ATiny%3A%3AConstrainedObject/markdown).

       "numifies_to($constraint)"
           See [Type::Tiny::ConstrainedObject](https://www.chedong.com/phpMan.php/perldoc/Type%3A%3ATiny%3A%3AConstrainedObject/markdown).

       "with_attribute_values($attr1 => $constraint1, ...)"
           See [Type::Tiny::ConstrainedObject](https://www.chedong.com/phpMan.php/perldoc/Type%3A%3ATiny%3A%3AConstrainedObject/markdown).

   Overloading
       o   Arrayrefification calls "type_constraints".

BUGS
       Please report any bugs to
       <<https://github.com/tobyink/p5-type-tiny/issues>>.

SEE ALSO
       [Type::Tiny::Manual](https://www.chedong.com/phpMan.php/perldoc/Type%3A%3ATiny%3A%3AManual/markdown).

       [Type::Tiny](https://www.chedong.com/phpMan.php/perldoc/Type%3A%3ATiny/markdown).

AUTHOR
       Toby Inkster <<tobyink@cpan.org>>.

COPYRIGHT AND LICENCE
       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.

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.

perl v5.32.1                      2021-08-31            [Type::Tiny](https://www.chedong.com/phpMan.php/perldoc/Type%3A%3ATiny/markdown)::[Union(3pm)](https://www.chedong.com/phpMan.php/man/Union/3pm/markdown)
