NOTE: use Perl; is on undef hiatus. You can read content, but you can't post it. More info will be forthcoming forthcomingly.
All the Perl that's Practical to Extract and Report
Stories, comments, journals, and other submissions on use Perl; are Copyright 1998-2006, their respective owners.
Think so (Score:1)
Installs a stub that delegates to
AUTOLOAD. Maybe because there are several of them in the class hierarchy and you want the one in the superclass to take precedence over the one in the subclass, for the methods it implements. Maybe it has to do with makingUNIVERSAL::canwork correctly.Re:Think so (Score:2)
You got it. The promise delegates to AUTOLOAD and AUTOLOAD, of course, can safely overwrite that promise, if needed. This allows can() to behave correctly with various modules which rely on AUTOLOAD to function more-or-less correctly, even if can hasn't been overridden. It also allows you to fulfill a requires for a Moose role.
One thing it doesn't do is try to replace a reference to itself. That might be annoying if someone does this:
That's annoying because the AUTOLOAD call might be expensive.
Still not sure how good of an idea this is, but it seems useful.
Reply to This
Parent