The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.
NAME
    Benchmark::Featureset::ParamCheck - compare different parameter validation
    modules

SYNOPSIS
      use Benchmark::Featureset::ParamCheck;
      use Module::Runtime qw(use_module);
  
      my @impl     = Benchmark::Featureset::ParamCheck->implementations;
      my $testdata = Benchmark::Featureset::ParamCheck->trivial_named_data;
  
      for my $i (@impl) {
        # Check the data 10,000 times.
        use_module($i)->run_named_check(10_000, $testdata);
      }

DESCRIPTION
    A whole bunch of implementations for sub paramater checking.

    Each implementation provides a method to check a hash of the form shown in
    the example. It should have three keys, 'integer' (value should be an
    integer), 'hashes' (value should be an arrayref of hashrefs), and 'object'
    (value should be an object with `print` and `close` methods).

    This is intended for benchmarking.

  Class Methods
    *   `implementations`

        List of implementations. Each implementation is a subclass of
        Benchmark::Featureset::ParamCheck::Base

    *   `trivial_named_data`, `trivial_positional_data`

        Returns trivial test data.

    *   `complex_named_data`, `complex_positional_data`

        Returns complex test data.

  Benchmark::Featureset::ParamCheck::Base
    This class provides the following class methods:

    *   `accept_array`

    *   `accept_arrayref`

    *   `accept_hash`

    *   `accept_hashref`

    *   `run_named_check($times, %parameters)`, `run_named_check($times,
        \%parameters)`

    *   `run_postional_check($times, @parameters)`

BUGS
    Please report any bugs to
    <http://rt.cpan.org/Dist/Display.html?Queue=Benchmark-Featureset-ParamChec
    k>.

SEE ALSO
    Parameter validation libraries: Data::Validator, MooseX::Params::Validate,
    Params::Check, Params::ValidationCompiler, Ref::Util::XS, Type::Params.

    Type constraint libraries: Moose, Mouse, Specio, Type::Tiny.

AUTHOR
    Toby Inkster <tobyink@cpan.org>.

COPYRIGHT AND LICENCE
    This software is copyright (c) 2017 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.

DISCLAIMER OF WARRANTIES
    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.