in reply to Re^2: Recover a variable from a loop
in thread Recover a variable from a loop
unless ($white{browser_name => $browser[0]}->compare($blue{browser_name => $browser[1]})) {
$diff_file = $white->difference($blue);
print '#The images differ; see ' . $diff_file . ' for details'. "\n";
...
}
I don't understand what you're trying to do with an expression like $white{browser_name => $browser[0]}, but I doubt it's the right way to go.
You're trying to use the old fashioned (pre-Perl 5) multidimensional array hack | emulation on the hash %white which you have never declared. (Update: You're not accessing the $white object reference.)
The "foo\34bozzle" key in the dd dump is part of this old hack. See $; in perlvar for some info on this. I'd like to give you a more complete reference, but I can't seem to find one ATM. (Anyone...?) (Update: Ok, there's this brief discussion on-line in perldata: Multi-dimensional array emulation.)c:\@Work\Perl\monks>perl -wMstrict -le "use Data::Dump qw(dd); ;; my %white; ;; my @bar = qw(bozzle); ;; $white{ foo => $bar[0] } = 'wibble'; dd \%white; " { "foo\34bozzle" => "wibble" }
Give a man a fish: <%-{-{-{-<
|
|---|