I have some questions about Pair objects. Synopsis 2 currently
shows Pairs as being immutable, but there are a few places in
the test suite that expect to modify the value component of a
Pair, so I'm asking here:
(1) If I use .pairs to obtain a list of Pairs from an array or
hash, are the values of those Pairs references to the original
elements or copies of them?
For example, after
my @list = (1,2,3);
for @list.pairs { .value += 10; }
does @list contain 1,2,3 or 11,12,13 ?
(2) If I build a Pair using infix:«=>», is the value portion
of the new pair modifiable -- i.e., can it act as an lvalue?
If it can be an lvalue, is it really a reference to the original
value?
my $x = 12;
my $p = (key => $x);
$p.value += 10; # valid? If valid, is $x modified?
Pm