in reply to List arguments of a method
I want to list the arguments of allVars that is - $no1, $no2, $name1 and $name2.
In the usual Perl nomenclature, the arguments are simply the values that are passed in, and those can be found in @_.
Perl 5 doesn't (yet) support formal parameter lists / signatures of subroutines, so you can't introspect them.
Perl 6 exposes signatures as objects, and allows you introspect that parameter list:
$ perl6-m -e 'sub f($x, $a, $b) { }; say &f.signature.params.perl' (Any $x, Any $a, Any $b).list $ perl6-m -e 'sub f($x, $a, $b) { }; say &f.signature.params[1].name' $a $ perl6-m -e 'sub f($x, $a, $b) { }; say &f.signature.params[1].type.^ +name' Any
|
---|
Replies are listed 'Best First'. | |
---|---|
Re^2: List arguments of a method
by tobyink (Canon) on May 15, 2014 at 09:27 UTC |
In Section
Seekers of Perl Wisdom