NAME
    Sah::Schemas::Float - Sah schemas for various floating types

VERSION
    This document describes version 0.013 of Sah::Schemas::Float (from Perl
    distribution Sah-Schemas-Float), released on 2022-10-20.

SAH SCHEMAS
    The following schemas are included in this distribution:

    *   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
    <https://metacpan.org/release/Sah-Schemas-Float>.

SOURCE
    Source repository is at
    <https://github.com/perlancar/perl-Sah-Schemas-Float>.

SEE ALSO
    Sah - schema specification

    Data::Sah - Perl implementation of Sah

AUTHOR
    perlancar <perlancar@cpan.org>

CONTRIBUTING
    To contribute, you can send patches by email/via RT, or send pull
    requests on GitHub.

    Most of the time, you don't need to build the distribution yourself. You
    can simply modify the code, then test via:

     % prove -l

    If you want to build the distribution (e.g. to try to install it locally
    on your system), you can install Dist::Zilla,
    Dist::Zilla::PluginBundle::Author::PERLANCAR,
    Pod::Weaver::PluginBundle::Author::PERLANCAR, and sometimes one or two
    other Dist::Zilla- and/or Pod::Weaver plugins. Any additional steps
    required beyond that are considered a bug and can be reported to me.

COPYRIGHT AND LICENSE
    This software is copyright (c) 2022, 2020, 2019, 2018 by perlancar
    <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.

BUGS
    Please report any bugs or feature requests on the bugtracker website
    <https://rt.cpan.org/Public/Dist/Display.html?Name=Sah-Schemas-Float>

    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.

