Provided by: libclass-meta-perl_0.66-1_all
NAME
Class::Meta::Types::Perl - Perl data types
SYNOPSIS
package MyApp::Thingy; use strict; use Class::Meta; use Class::Meta::Types::Perl; # OR... # use Class::Meta::Types::Perl 'affordance'; # OR... # use Class::Meta::Types::Perl 'semi-affordance'; BEGIN { # Create a Class::Meta object for this class. my $cm = Class::Meta->new( key => 'thingy' ); # Add an integer attribute. $cm->add_attribute( name => 'my_hash', type => 'hash' ); $cm->build; }
DESCRIPTION
This module provides Perl data types for use with Class::Meta attributes. Simply load it, then pass the name of one of its types to the "add_attribute()" method of a Class::Meta object. See Class::Meta::Type for more information on using and creating data types. The validation checks for Class::Meta::Types::Perl are provided by the Class::Meta::Type's support for object type validation, since Perl data types are understood by "UNIVERSAL::isa()". The data types created by Class::Meta::Types::Perl are: scalar A simple scalar value. This can be anything, and has no validation checks. scalarref A scalar reference. "UNIVERSAL::isa()" must return 'SCALAR'. array arrayref A array reference. "UNIVERSAL::isa()" must return 'ARRAY'. hash hashref A hash reference. "UNIVERSAL::isa()" must return 'HASH'. code coderef closure A code reference. Also known as a closure. "UNIVERSAL::isa()" must return 'CODE'.
SUPPORT
This module is stored in an open GitHub repository <http://github.com/theory/class-meta/>. Feel free to fork and contribute! Please file bug reports via GitHub Issues <http://github.com/theory/class-meta/issues/> or by sending mail to bug-Class-Meta@rt.cpan.org <mailto:bug-Class-Meta@rt.cpan.org>.
AUTHOR
David E. Wheeler <david@justatheory.com>
SEE ALSO
Other classes of interest within the Class::Meta distribution include: Class::Meta This class contains most of the documentation you need to get started with Class::Meta. Class::Meta::Type This class manages the creation of data types. Class::Meta::Attribute This class manages Class::Meta class attributes, all of which are based on data types. Other data type modules: Class::Meta::Types::String Class::Meta::Types::Boolean Class::Meta::Types::Numeric
COPYRIGHT AND LICENSE
Copyright (c) 2002-2011, David E. Wheeler. Some Rights Reserved. This module is free software; you can redistribute it and/or modify it under the same terms as Perl itself.