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_test_data;
  
      for my $i (@impl) {
        # Check the data 10,000 times.
        use_module($i)->run_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.

  Methods
    *   `implementations`

        List of implementations.

    *   `trivial_test_data`

        Returns trivial test data.

    *   `complex_test_data`

        Returns complex test data.

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.

