<html><head><meta name="color-scheme" content="light dark"></head><body><pre style="word-wrap: break-word; white-space: pre-wrap;">package Params::Validate;
BEGIN {
  $Params::Validate::VERSION = '0.97';
}

use strict;
use warnings;

require XSLoader;
XSLoader::load(
    'Params::Validate',
    exists $Params::Validate::{VERSION}
    ? do { ${ $Params::Validate::{VERSION} } }
    : 42
);

my $default_fail = sub {
    require Carp;
    Carp::confess( $_[0] );
};

{
    my %defaults = (
        ignore_case    =&gt; 0,
        strip_leading  =&gt; 0,
        allow_extra    =&gt; 0,
        on_fail        =&gt; $default_fail,
        stack_skip     =&gt; 1,
        normalize_keys =&gt; undef,
    );

    *set_options = \&amp;validation_options;

    sub validation_options {
        my %opts = @_;

        my $caller = caller;

        foreach ( keys %defaults ) {
            $opts{$_} = $defaults{$_} unless exists $opts{$_};
        }

        $OPTIONS{$caller} = \%opts;
    }
}

sub _check_regex_from_xs {
    return ( defined $_[0] ? $_[0] : '' ) =~ /$_[1]/ ? 1 : 0;
}

BEGIN {
    *validate      = \&amp;_validate;
    *validate_pos  = \&amp;_validate_pos;
    *validate_with = \&amp;_validate_with;
}

1;

# ABSTRACT: XS implementation of Params::Validate



=pod

=head1 NAME

Params::Validate - XS implementation of Params::Validate

=head1 VERSION

version 0.97

=head1 SYNOPSIS

  See Params::Validate

=head1 DESCRIPTION

This is an XS implementation of Params::Validate.  See the
Params::Validate documentation for details.

=head1 AUTHOR

Dave Rolsky, &lt;autarch@urth.org&gt; and Ilya Martynov &lt;ilya@martynov.org&gt;

=head1 COPYRIGHT AND LICENSE

This software is Copyright (c) 2011 by Dave Rolsky and Ilya Martynov.

This is free software, licensed under:

  The Artistic License 2.0 (GPL Compatible)

=cut


__END__

</pre></body></html>