NAME
Sah::Schemas::Float - Sah schemas for various floating types
VERSION
This document describes version 0.011 of Sah::Schemas::Float (from Perl
distribution Sah-Schemas-Float), released on 2020-06-04.
SAH SCHEMAS
* inf
Inf or -Inf.
* int_or_inf
Integer, or Inf/-Inf.
* nan
NaN.
* negfloat
Negative float.
* neginf
-Inf.
* percent
A float.
This type is basically "float", with "str_as_percent" coerce rule.
So the percent sign is optional, but the number is always
interpreted as percent, e.g. "1" is interpreted as 1% (0.01).
In general, instead of using this schema, I recommend just using the
"float" type (which by default includes coercion rule to convert
from percent notation e.g. '1%' -> 0.01). Use this schema if your
argument really needs to be expressed in percents.
* posfloat
Positive float.
See also "ufloat" for floats that are equal or larger than 0.
* posinf
Inf but not -Inf.
* posint_or_posinf
Positive integer, or Inf.
Can be used to check value for number of items in a (possibly
infinite) sequence.
* share
A float between 0 and 1.
Accepted in one of these forms:
0.5 # a normal float between 0 and 1
10 # a float between 1 (exclusive) and 100, interpreted as percent
10% # a percentage string, between 0% and 100%
Due to different interpretations, particularly "1" (some people
might expect it to mean "0.01" or "1%") use of this type is
discouraged. Use Sah::Schema::percent instead.
* ufloat
Non-negative float.
See also "posfloat" for floats that are larger than 0.
* uint_or_posinf
Unsigned integer, or Inf.
Can be used to check value for number of items in a (possibly
infinite) sequence.
HOMEPAGE
Please visit the project's homepage at
.
SOURCE
Source repository is at
.
BUGS
Please report any bugs or feature requests on the bugtracker website
When submitting a bug or request, please include a test-file or a patch
to an existing test-file that illustrates the bug or desired feature.
SEE ALSO
Sah - specification
Data::Sah
AUTHOR
perlancar
COPYRIGHT AND LICENSE
This software is copyright (c) 2020, 2019, 2018 by perlancar@cpan.org.
This is free software; you can redistribute it and/or modify it under
the same terms as the Perl 5 programming language system itself.