logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

Class::Meta::Types::Numeric - Numeric data types

Author

       David E. Wheeler <david@justatheory.com>

Description

       This module provides numeric 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 to create attributes
       of the numeric data type. See Class::Meta::Type for more information on using and creating data types.

       The validation checks for Class::Meta::Types::Numeric are provided by the Data::Types module. Consult its
       documentation to find out what it considers to be a number and what's not.

       The data types created by Class::Meta::Types::Numeric are:

       whole
           A whole number. That is, a positive integer.

       integer
       int An integer number.

       decimal
       dec A decimal number.

       real
           A real number.

       float
           A floating point number.

Name

       Class::Meta::Types::Numeric - Numeric data types

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::Perl
       Class::Meta::Types::String
       Class::Meta::Types::Boolean

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>.

Synopsis

         package MyApp::Thingy;
         use strict;
         use Class::Meta;
         use Class::Meta::Types::Numeric;
         # OR...
         # use Class::Meta::Types::Numeric 'affordance';
         # OR...
         # use Class::Meta::Types::Numeric '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 => 'age',
                                 type => 'integer' );
             $cm->build;
         }

See Also