TEXMEC > Class-Iterator > Class::Iterator

Download:
Class-Iterator-0.3.tar.gz

Dependencies

Annotate this POD

CPAN RT

New  3
Open  0
View/Report Bugs
Module Version: 0.3   Source  

NAME ^

Class::Iterator - Iterator class

SYNOPSIS ^

  use Class::Iterator;
  my $it = Class::Iterator->new(\&closure_generator);

  while (my $v = $it->next) { print "value : $v\n" }
  
  # use map like
  my $it2 = imap { ...some code with $_...} $it
  while (my $v = $it->next) { print "value : $v\n" }

  # use grep like
  my $it3 = igrep { ...some code with $_...} $it
  while (my $v = $it->next) { print "value : $v\n" }

DESCRIPTION ^

Class::Iterator is a generic iterator object class. It use a closure an wrap into an object interface.

new(\&closure_generator)

This is the constructor. The argument is a sub which look like sub closure_generator { my $private_data; return sub { # do something with $private_data # and return it return $private_data } }

next

calling this method make one iteration.

$o = imap { ... } $it

This a creator. It create a new iterator from an existant iterator in the manner of map.

$o = igrep { ... } $it

This a creator. It create a new iterator from an existant iterator in the manner of grep.

CREDITS ^

Marc Jason Dominius's YAPC::EU 2003 classes. Ken Olstad

AUTHOR ^

Robert Silve <robert@silve.net>

syntax highlighting: