Take me over?
NAME
Object::Meta::Plugin::Useful - a subclass of Object::Meta::Plugin, base class of the various Useful:: plugins.
SYNOPSIS
# use the others. see bottom
DESCRIPTION
This is the parent of all the plugin base classes that fall under Useful::. It defines a generic constructor, as well as an init
without suicidal tendencies.
Object::Meta::Plugin::Useful::Generic
This is a base class for a plugin which extends Object::Meta::Plugin::Useful. It provides the export
method, with which you explicitly select methods for export.
Object::Meta::Plugin::Useful::Meta
This is a base class for a [meta] plugin which extends Object::Meta::Plugin::Useful as well as Object::Meta::Plugin::Host. It's function is to provide the necessary bridging a host needs from the outside of the host. See the Object::Meta::Plugin::Useful::Meta's documents (the CAVEATS section), or the test suite (basic.t) for how to do this from within the host, without extending Object::Meta::Plugin::Host, but rather plugging into one.
Object::Meta::Plugin::Useful::Greedy
This is a base class for a plugin which extends Object::Meta::Plugin::Useful. It gobbles the defined methods of an object from it's symbol table / @ISA tree, and then filters them using the [overridable] method _filter
. It should provide the easiest functionality, provided that there is no wizardry going on. The other downside is that it requires Devel::Symdump to work.
METHODS
- new
-
This method will create a new object, with a hash data structure. The key 'exported' is used, and it's value will be an Object::Meta::Plugin::ExportList object, created when
init
is called. - init
-
This method will will create a new export list. All arguments to it (probably accepted from Object::Meta::Plugin::Host's
plug
method, are passed to Object::Meta::Plugin::ExportList'snew
.
COPYRIGHT & LICENSE
Copyright 2003 Yuval Kogman. All rights reserved.
This program is free software; you can redistribute it
and/or modify it under the same terms as Perl itself.
AUTHOR
Yuval Kogman <nothingmuch@woobling.org>
SEE ALSO
Object::Meta::Plugin, Object::Meta::Plugin::Useful::Generic, Object::Meta::Plugin::Useful::Meta.