Algorithm-Combinatorics
view release on metacpan or search on metacpan
Combinatorics.pm view on Meta::CPAN
my $i = 0;
foreach my $x (@$data) {
push @{$partition[$k->[$i]]}, $x;
++$i;
}
return \@partition;
}
sub __check_params {
my ($data, $k, $k_is_not_required) = @_;
if (not defined $data) {
croak("Missing parameter data");
}
unless ($k_is_not_required || defined $k) {
croak("Missing parameter k");
}
my $type = reftype $data;
if (!defined($type) || $type ne "ARRAY") {
croak("Parameter data is not an arrayref");
}
carp("Parameter k is negative") if !$k_is_not_required && $k < 0;
}
# Given an iterator that responds to the next() method this
# subrutine returns the iterator in scalar context, loops
# over the iterator to build and return an array of results
# in list context, and does nothing but issue a warning in
# void context.
sub __contextualize {
my $iter = shift;
( run in 0.500 second using v1.01-cache-2.11-cpan-cc502c75498 )