Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Fetching contributors…

Cannot retrieve contributors at this time

62 lines (49 sloc) 1.499 kB
use v6;
use Test;
# L<S04/The C<for> statement>
plan 16;
# Implicit $_
for 1, 2 {
my $inside = '';
for 1 .. 3 { $inside ~= $_; }
is($inside, "123", "lexical scalar properly initialized, round $_");
}
for 1, 2 {
my @inside;
for 1 .. 3 { push @inside, $_; }
is(@inside.join, "123", "lexical array properly initialized, round $_");
}
# Explicit $_
for 1, 2 {
my $inside = '';
for 1 .. 3 -> $_ { $inside ~= $_; }
is($inside, "123", "lexical scalar properly initialized, round $_, explicit \$_");
}
for 1, 2 {
my @inside;
for 1 .. 3 -> $_ { push @inside, $_; }
is(@inside.join, "123", "lexical array properly initialized, round $_, explicit \$_");
}
# Explicit $_
for 1, 2 -> $_ {
my $inside = '';
for 1 .. 3 -> $_ { $inside ~= $_; }
is($inside, "123", "lexical scalar properly initialized, round $_, two explicit \$_s");
}
for 1, 2 -> $_ {
my @inside;
for 1 .. 3 -> $_ { push @inside, $_; }
is(@inside.join, "123", "lexical array properly initialized, round $_, two explicit \$_s");
}
{
sub respect(*@a) {
my @b = ();
@b.push($_) for @a;
return @b.elems;
}
is respect(1,2,3), 3, 'a for loop inside a sub loops over each of the elements';
is respect([1,2,3]), 1, '... but only over one array ref';
is respect( my @a = 1, 2, 3 ), 3, '...and when the array is declared in the argument list';
is @a.join(','), '1,2,3', 'and the array get the right values';
}
# vim: ft=perl6
Jump to Line
Something went wrong with that request. Please try again.