sub permutations()

in t/modules/authz_core.t [321:338]


sub permutations
{
    my @results = [shift];

    foreach my $el (@_) {
        my @new_results;
        foreach my $arr (@results) {
            my $len = scalar(@{$arr});
            foreach my $i (0 .. $len) {
                my @new = @{$arr};
                splice @new, $i, 0, $el;
                push @new_results, \@new;
            }
        }
        @results = @new_results;
    }
    return @results;
}