diff options
author | David Golden <dagolden@cpan.org> | 2010-09-12 20:26:43 -0400 |
---|---|---|
committer | David Golden <dagolden@cpan.org> | 2010-10-21 09:23:58 -0400 |
commit | c035a075a240f10383292128a8d3f3746c4ac857 (patch) | |
tree | a245d8f117b9636fe740448118a753e5457978c8 /hv.h | |
parent | 9061a8f72941979d02cbccb5cb18a2034813b6a7 (diff) | |
download | perl-c035a075a240f10383292128a8d3f3746c4ac857.tar.gz |
Add single-term prototype
The C<+> prototype is a special alternative to C<$> that will act like
C<\[@%]> when given a literal array or hash variable, but will otherwise
force scalar context on the argument. This is useful for functions which
should accept either a literal array or an array reference as the argument:
sub smartpush (+@) {
my $aref = shift;
die "Not an array or arrayref" unless ref $aref eq 'ARRAY';
push @$aref, @_;
}
When using the C<+> prototype, your function must check that the argument
is of an acceptable type.
Diffstat (limited to 'hv.h')
0 files changed, 0 insertions, 0 deletions