NAME
Data::Verifier::Nested - Nested profile based data verification with Moose type constraints.
VERSION
version 0.66
SYNOPSIS
use Data::Verifier::Nested;
my $dv = Data::Verifier::Nested->new(
filters => [ qw(trim) ],
profile => {
name => {
first_name => { type => 'Str', required => 1 },
last_name => { type => 'Str', required => 1 },
},
age => { type => 'Int' },
sign => { required => 1 },
}
);
# Pass in a hash of data
my $results = $dv->verify({
name => { first_name => 'Cory', last_name => 'Watson' }, age => 'foobar'
});
$results->success; # no
$results->is_invalid('name.first_name'); # no
$results->is_invalid('name.last_name'); # no
$results->is_invalid('age'); # yes
$results->is_missing('name.first_name'); # no
$results->is_invalid('name.last_name'); # no
$results->is_missing('sign'); # yes
$results->get_original_value('name.first_name'); # Unchanged, original value
$results->get_value('name.first_name'); # Filtered, valid value
$results->get_value('age'); # undefined, as it's invalid
DESCRIPTION
Data::Verifier allows you verify data that is in a flat hash, but sometimes this is not enough, this is where Data::Verifier::Nested comes in. It is a subclass of Data::Verifier that can work with nested data structures.
CONTRIBUTORS
Stevan Little
AUTHOR
Cory G Watson <gphat@cpan.org>
COPYRIGHT AND LICENSE
This software is copyright (c) 2024 by Cold Hard Code, LLC.
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.