On Apr 8, 2004, at 7:18 PM, Randy W. Sims wrote:
Hmm, I guess I was ASSuming that with inheriance-style plugins that
they would be loaded all the time, but I guess it is possible to just
selectively load the ones desired...
Oh, absolutely - it was never my intention to load all plugins
installed on a system, only the plugins explicitly listed as necessary
for a certain build. I meant to clarify that earlier, I was wondering
whether we might have different understandings there.
The problem with inheritance is that when you override a method, a lot
of the time you need to know what that method does internaly, and
whether you need to call the the inherited method before, during,
after, or never from your overriden method. It probably *can* be done
correctly with inheritance, but it is less likely and impossible to
enforce proper separation.
A *proper* plugin author should only depend on the documented
*semantics* of the overridden method, not its implementation. Of
course, since plugin authors have the source available to look at, and
the documentation isn't always 100% complete, I agree that the line
between semantics and implementation is sometimes fuzzy.
Currently, IIRC it looks only in the pod for M::B for =items in a
particular section of the manual, extracts, and displays it.
It actually looks through the entire inheritance tree:
sub get_action_docs {
...
foreach my $class ($self->super_classes) {
-Ken
-------------------------------------------------------
This SF.Net email is sponsored by: IBM Linux Tutorials
Free Linux tutorial presented by Daniel Robbins, President and CEO of
GenToo technologies. Learn everything from fundamentals to system
administration.http://ads.osdn.com/?ad_id=1470&alloc_id=3638&op=click
|