NAME¶
Validation::Class::Mapping - Generic Container Class for a Hash Reference
VERSION¶
version 7.900056
SYNOPSIS¶
use Validation::Class::Mapping;
my $foos = Validation::Class::Mapping->new;
$foos->add(foo => 'one foo');
$foos->add(bar => 'one bar');
print $foos->count; # 2 objects
DESCRIPTION¶
Validation::Class::Mapping is a container class that provides general-purpose
functionality for hashref objects.
METHODS¶
new¶
my $self = Validation::Class::Mapping->new;
add¶
$self = $self->add(foo => 1, bar => 2);
clear¶
$self = $self->clear;
count¶
my $count = $self->count;
delete¶
$value = $self->delete($name);
defined¶
$true if $self->defined($name) # defined
each¶
$self = $self->each(sub{
my ($key, $value) = @_;
});
exists¶
$true if $self->exists($name) # exists
get¶
my $value = $self->get($name); # i.e. $self->{$name}
grep¶
$new_list = $self->grep(qr/update_/);
has¶
$true if $self->has($name) # defined or exists
hash¶
my $hash = $self->hash;
iterator¶
my $next = $self->iterator();
# defaults to iterating by keys but accepts: sort, rsort, nsort, or rnsort
# e.g. $self->iterator('sort', sub{ (shift) cmp (shift) });
while (my $item = $next->()) {
# do something with $item (value)
}
keys¶
my @keys = $self->keys;
list¶
my %hash = $self->list;
merge¶
$self->merge($hashref);
nsort¶
my @keys = $self->nsort;
pairs¶
my @pairs = $self->pairs;
# or filter using $self->pairs('grep', $regexp);
foreach my $pair (@pairs) {
# $pair->{key} is $pair->{value};
}
rmerge¶
$self->rmerge($hashref);
rnsort¶
my @keys = $self->rnsort;
rsort¶
my @keys = $self->rsort;
sort¶
my @keys = $self->sort(sub{...});
values¶
my @values = $self->values;
AUTHOR¶
Al Newkirk <anewkirk@ana.io>
COPYRIGHT AND LICENSE¶
This software is copyright (c) 2011 by Al Newkirk.
This is free software; you can redistribute it and/or modify it under the same
terms as the Perl 5 programming language system itself.