---
name: "Class::Meta::Types::Numeric"
section: "3pm"
platform: "linux"
package: "libclass-meta-perl"
version: "0.66-3"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/Class::Meta::Types::Numeric"
---

# Class::Meta::Types::Numeric(3pm)

Numeric data types

## NAME

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

## 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;
  }
```

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

## 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::Perl

  - Class::Meta::Types::String

  - Class::Meta::Types::Boolean

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