in reply to Re^3: "my" declaration problem
in thread "my" declaration problem
The following code might have been autogenerated. It's not even really confusing and it works exactly as advertised:
use Guard; use File::Temp 'tempfile'; sub frobnicate { my ($fh,$name) = tempfile(); print {$fh} "Hello"; close $fh; my $atexit = guard { print "Removing '$name'"; unlink $name; }; my ($fh,$name) = tempfile(); print {$fh} "World"; close $fh; my $atexit = guard { print "Removing '$name'"; unlink $name; }; } print "Frobnicating"; frobnicate(); print "Frobnicating done, and cleaned up"; __END__ Frobnicating Removing 'C:\Users\Corion\AppData\Local\Temp\JPUN_wEVOo' Removing 'C:\Users\Corion\AppData\Local\Temp\eUuaGV_5sj' Frobnicating done, and cleaned up
Of course, there is no way to get at the first instances of $fh, $name and $atexit.
And if I were autogenerating that code, why would I bother with naming the variables $name1, $name2 etc. when they are just for later customization anyway?
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re^5: "my" declaration problem
by LanX (Saint) on Apr 25, 2017 at 20:38 UTC | |
by Corion (Patriarch) on Apr 25, 2017 at 20:40 UTC | |
by LanX (Saint) on Apr 25, 2017 at 20:53 UTC | |
by Corion (Patriarch) on Apr 25, 2017 at 20:57 UTC | |
by LanX (Saint) on Apr 25, 2017 at 21:05 UTC | |
|