in reply to Re^3: Elegant way to return true or nothing from a subroutine?
in thread Elegant way to return true or nothing from a subroutine?
use warnings; my $false = !!0; my $numzero = 0; my $strzero = '0'; my $nulstr = ''; local $\ = "\n"; print 'false: ', $false; # '' <-- Not zero! print '0: ', $numzero; # '0' print "'0': ", $strzero; # '0' print "'': ", $nulstr; # '' print ''; print 'false: ', 0+$false; # '0' (no warning) print '0: ', 0+$numzero; # '0' (no warning) print "'0': ", 0+$strzero; # '0' (no warning) print "'': ", 0+$nulstr; # '0' with warning
If you wanted something that maps 0 to 0 and every other integer to 1, you'd want 0 + !!$var.
Update: Added $strzero. Minor cosmetic changes.
|
|---|