List::Rotation::Cycle - Cycle through a list of values via a singleton object implemented as closure.
use List::Rotation::Cycle; my @array = qw( A B C ); my $first_cycle = List::Rotation::Cycle->new(@array); my $second_cycle = List::Rotation::Cycle->new(@array); print $first_cycle->next; ## prints A print $second_cycle->next; ## prints B print $first_cycle->next; ## prints C print $second_cycle->next; ## prints A, looping back to beginning
Use List::Rotation::Cycle to loop through a list of values. Once you get to the end of the list, you go back to the beginning.
List::Rotation::Cycle
List::Rotation::Cycle is implemented as a Singleton Pattern. You always just get 1 (the very same) Cycle object even if you use the new method several times. This is done by using Memoize on the new method. It returns the same object for every use of new that comes with the same List of parameters.
Memoize
new
Create a Cycle object for the list of values in the list.
Return the next element. This method is implemented as a closure.
Imre Saling, <pelagicatcpandotorg>
<pelagicatcpandotorg>
Copyright 2000-2004, Imre Saling, All rights reserved.
This software is available under the same terms as perl.
To install List::Rotation::Cycle, copy and paste the appropriate command in to your terminal.
cpanm
cpanm List::Rotation::Cycle
CPAN shell
perl -MCPAN -e shell install List::Rotation::Cycle
For more information on module installation, please visit the detailed CPAN module installation guide.