Algorithm-GenerateSequence

 view release on metacpan or  search on metacpan

lib/Algorithm/GenerateSequence.pm  view on Meta::CPAN


=cut

sub new {
    my $class = shift;

    my @values = @_;
    my @counters = (0) x @values;
    my ($started, $ended);

    bless sub {
        return if $ended;

        if ($started++) {
            my $max = $#counters;

            # mmm, long addition
            do {
                my $new = ++$counters[ $max ];
                # check for overflow
                goto DONE if $new % @{ $values[ $max ] };



( run in 0.719 second using v1.01-cache-2.11-cpan-de7293f3b23 )