Kavorka::Manual::PrototypeAndAttributes(3) the more rarely used features of Perl subroutines

DESCRIPTION

The Prototype

Like with the sub keyword, a prototype may be provided for functions. Method dispatch ignores this, so it's only likely to be useful for "fun", and even then, rarely.

Like Function::Parameters, Kavorka uses ":(...)" to indicate a prototype. This avoids ambiguity between signatures, prototypes and attributes.

For compatibility with Perl 5.20, the special attribute ":prototype(...)" is supported as an alternative mechanism for expressing prototypes.

The Attributes

Attributes are parsed as per ``Subroutine Attributes'' in perlsub.

For anonymous functions, some attributes (e.g. ":lvalue") may be applied too late to take effect. Attributes should mostly work for named functions though.

BUGS

Please report any bugs to <http://rt.cpan.org/Dist/Display.html?Queue=Kavorka>.

AUTHOR

Toby Inkster <[email protected]>.

COPYRIGHT AND LICENCE

This software is copyright (c) 2013-2014 by Toby Inkster.

This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.

DISCLAIMER OF WARRANTIES

THIS PACKAGE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.