Provided by: libvalidation-class-perl_7.900054-1_all bug

NAME

       Validation::Class::Mapping - Generic Container Class for a Hash Reference

VERSION

       version 7.900054

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.