Hello all.
This question pertains to PERL5.*
I know that I can use a function output as an array easily, w/o needing temporary arrays
I.E.:
foreach $line ($self->getAllLines() {... }
I want to be able to do the same with a sub that return hashes, but i can't get it to work.
See tiny example below using perl -e:
liord@analog4 267 > perl -e 'sub a { %a = ( 1 , "ho" ); return %a} pri
+nt keys a(), "\n"; '
Type of arg 1 to keys must be hash (not subroutine entry) at -e line 1
+, near "),"
Execution of -e aborted due to compilation errors.
However, using a variable to get the hash and then using keys on the variable, works:
liord@analog4 268 > perl -e 'sub a { %a = ( 1 , "ho" ); return %a} %t=
+ a() ; print keys %t , "\n"; '
1
Is there a way to avoid defining %t, and make the code more compact?