NAME
Iter - easily iterate over a hash/array
SYNOPSIS
use Iter qw(:all);
my @days = qw/Mon Tue Wnd Thr Fr Su So/;
foreach ( iter \@days )
{
printf "Day: %s [%s]\n", VALUE, counter;
}
foreach my $i ( iter \@days )
{
printf "Day: %s [%s]\n", $i->VALUE, $i->counter;
}
my %numbers = ( 1 => 'one', 2 => 'two', 3 => 'three', 4 => 'four' );
foreach ( iter \%numbers )
{
printf "%10s [%10s] %10d\n", key, value, counter;
}
foreach my $i ( iter \%numbers )
{
printf "%10s [%10s] %10d\n", $i->key, $i->value, $i->counter;
}
foreach ( iter \%numbers )
{
printf "%10s [%10s] %10d\n", KEY, VALUE, counter;
}
DESCRIPTION
Iter provides functions for comfortably iterating over perl data structures.
iter
Accepts a reference to an ARRAY or HASH. Returns a sorted list of 'Iter' objects.
key() or KEY()
Returns the current key (HASHs only).
value() or VALUE()
Returns the current value.
counter()
Returns the current counter (starting at 0).
getvalue( index )
Returns the value at index. It behaves like an array index.
get( index )
Returns the Iter object at index. It behaves like an array index.
CAVE: Future variables are read-only ! It is the common "foreach( @something ) not change during iteration through it" story.
Example:
get(-1) will return the last iterator object.
get(-1)->value will return the position of the last
get(-1)->value will return the value of the last
get(1+counter) will return the next object
BUGS
Not get(counter+1), but get(1+counter) will function correctly (under perl 5.6.0).
And get(counter - 1) does not work.
EXPORT
none by default.
all: iter counter value VALUE key KEY get
AUTHOR
M. Ünalan, <muenalan@cpan.org>
SEE ALSO
Class::Iter, Tie::Array::Iterable, Object::Iterate
1 POD Error
The following errors were encountered while parsing the POD:
- Around line 221:
Non-ASCII character seen before =encoding in 'Ünalan,'. Assuming CP1252