Linux and UNIX Man Pages

Linux & Unix Commands - Search Man Pages

moosex::meta::typeconstraint::structured(3) [osx man page]

MooseX::Meta::TypeConstraint::Structured(3)		User Contributed Perl Documentation	       MooseX::Meta::TypeConstraint::Structured(3)

NAME
MooseX::Meta::TypeConstraint::Structured - MooseX::Meta::TypeConstraint::Structured - Structured type constraints. DESCRIPTION
A structure is a set of Moose::Meta::TypeConstraint that are 'aggregated' in such a way as that they are all applied to an incoming list of arguments. The idea here is that a Type Constraint could be something like, "An Int followed by an Int and then a Str" and that this could be done so with a declaration like: Tuple[Int,Int,Str]; ## Example syntax So a structure is a list of Type constraints (the "Int,Int,Str" in the above example) which are intended to function together. ATTRIBUTES
type_constraints A list of Moose::Meta::TypeConstraint objects. constraint_generator A subref or closure that contains the way we validate incoming values against a set of type constraints. METHODS
validate Messing with validate so that we can support niced error messages. generate_constraint_for ($type_constraints) Given some type constraints, use them to generate validation rules for an ref of values (to be passed at check time) parameterize (@type_constraints) Given a ref of type constraints, create a structured type. __infer_constraint_generator This returns a CODEREF which generates a suitable constraint generator. Not user servicable, you'll never call this directly. compile_type_constraint hook into compile_type_constraint so we can set the correct validation rules. create_child_type modifier to make sure we get the constraint_generator is_a_type_of is_subtype_of equals Override the base class behavior. type_constraints_equals Checks to see if the internal type constraints are equal. get_message Give you a better peek into what's causing the error. For now we stringify the incoming deep value with Devel::PartialDump and pass that on to either your custom error message or the default one. In the future we'll try to provide a more complete stack trace of the actual offending elements SEE ALSO
The following modules or resources may be of interest. Moose, Moose::Meta::TypeConstraint AUTHORS
o John Napiorkowski <jjnapiork@cpan.org> o Florian Ragwitz <rafl@debian.org> o Yuval Kogman <nothingmuch@woobling.org> o Tomas Doran <bobtfish@bobtfish.net> o Robert Sedlacek <rs@474.at> COPYRIGHT AND LICENSE
This software is copyright (c) 2011 by John Napiorkowski. This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself. perl v5.16.2 2011-10-03 MooseX::Meta::TypeConstraint::Structured(3)

Check Out this Related Man Page

Moose::Meta::TypeConstraint::Parameterizable(3) 	User Contributed Perl Documentation	   Moose::Meta::TypeConstraint::Parameterizable(3)

NAME
Moose::Meta::TypeConstraint::Parameterizable - Type constraints which can take a parameter (ArrayRef) VERSION
version 2.1202 DESCRIPTION
This class represents a parameterizable type constraint. This is a type constraint like "ArrayRef" or "HashRef", that can be parameterized and made more specific by specifying a contained type. For example, instead of just an "ArrayRef" of anything, you can specify that is an "ArrayRef[Int]". A parameterizable constraint should not be used as an attribute type constraint. Instead, when parameterized it creates a Moose::Meta::TypeConstraint::Parameterized which should be used. INHERITANCE
"Moose::Meta::TypeConstraint::Parameterizable" is a subclass of Moose::Meta::TypeConstraint. METHODS
This class is intentionally not documented because the API is confusing and needs some work. BUGS
See "BUGS" in Moose for details on reporting bugs. AUTHORS
o Stevan Little <stevan.little@iinteractive.com> o Dave Rolsky <autarch@urth.org> o Jesse Luehrs <doy@tozt.net> o Shawn M Moore <code@sartak.org> o XXXX XXX'XX (Yuval Kogman) <nothingmuch@woobling.org> o Karen Etheridge <ether@cpan.org> o Florian Ragwitz <rafl@debian.org> o Hans Dieter Pearcey <hdp@weftsoar.net> o Chris Prather <chris@prather.org> o Matt S Trout <mst@shadowcat.co.uk> COPYRIGHT AND LICENSE
This software is copyright (c) 2006 by Infinity Interactive, Inc.. This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself. perl v5.18.2 2014-01-19 Moose::Meta::TypeConstraint::Parameterizable(3)
Man Page