in reply to Iterating over verbatim hash reference
Here are four very simple/clean syntaxes to choose from:
{ my %h = ( x=>5, y=>8 ); while ( my ($r,$s) = each %h ) { ... } }
for ({ x=>5, y=>8 }) { while ( my ($r,$s) = each %$_ ) { ... } }
where paired is defined asfor (paired( x=>5, y=>8 )) { my ($r,$s) = @$_; ... }
sub paired { my @pairs; push @pairs, [ shift, shift ] while @_; return @pairs; }
where paired is defined aspaired { my ($r,$s) = @_; ... } ( x=>5, y=>8 );
sub paired(&@) { my $cb = shift; my @rv; push @rv, $cb->(shift, shift) while @_; return @rv; }
|
|---|