DOKK / manpages / debian 10 / libtype-tiny-perl / Types::Common::Numeric.3pm.en
Types::Common::Numeric(3pm) User Contributed Perl Documentation Types::Common::Numeric(3pm)

Types::Common::Numeric - drop-in replacement for MooseX::Types::Common::Numeric

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

A drop-in replacement for MooseX::Types::Common::Numeric.

The following types are similar to those described in MooseX::Types::Common::Numeric.

"PositiveNum"
"PositiveOrZeroNum"
"PositiveInt"
"PositiveOrZeroInt"
"NegativeNum"
"NegativeOrZeroNum"
"NegativeInt"
"NegativeOrZeroInt"
"SingleDigit"
"SingleDigit" interestingly accepts the numbers -9 to -1; not just 0 to 9.

This module also defines an extra pair of type constraints not found in MooseX::Types::Common::Numeric.

"IntRange[`min, `max]"
Type constraint for an integer between min and max. For example:

  IntRange[1, 10]
    

The maximum can be omitted.

  IntRange[10]   # at least 10
    

The minimum and maximum are inclusive.

"NumRange[`min, `max]"
Type constraint for a number between min and max. For example:

  NumRange[0.1, 10.0]
    

As with IntRange, the maximum can be omitted, and the minimum and maximum are inclusive.

Exclusive ranges can be useful for non-integer values, so additional parameters can be given to make the minimum and maximum exclusive.

  NumRange[0.1, 10.0, 0, 0]  # both inclusive
  NumRange[0.1, 10.0, 0, 1]  # exclusive maximum, so 10.0 is invalid
  NumRange[0.1, 10.0, 1, 0]  # exclusive minimum, so 0.1 is invalid
  NumRange[0.1, 10.0, 1, 1]  # both exclusive
    

Making one of the limits exclusive means that a "<" or ">" operator will be used instead of the usual "<=" or ">=" operators.

Please report any bugs to <http://rt.cpan.org/Dist/Display.html?Queue=Type-Tiny>.

Types::Standard, Types::Common::String.

MooseX::Types::Common, MooseX::Types::Common::Numeric, MooseX::Types::Common::String.

Toby Inkster <tobyink@cpan.org>.

This software is copyright (c) 2013-2014, 2017-2019 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.

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.

2019-01-11 perl v5.28.1