Take me over?
NAME
Object::Meta::Plugin::Useful::Generic - a generic useful plugin base class.
SYNOPSIS
package MyFoo;
use bas "Object::Meta::Plugin::Useful::Generic";
sub new {
my $pkg = shift;
my $self = $pkg->SUPER::new(@_);
$self->export(qw/foo bar/);
}
sub foo {
# ...
}
sub bar {
# ...
}
DESCRIPTION
This provides a very simple base class for a plugin. It uses the method export
to explicitly mark a method name for exporting. When Object::Meta::Plugin::Useful's init
hits
METHODS
- export METHODS ...
-
This method takes a list of method names, and makes sure they are all implemented (
$self-
can($method)>) and so forth. It then makes notes of what remains, and will return these values when the exports method is called by the standard export list implementation.
CAVEATS
Will emit warnings if lexical warnings are asked for. It will bark when
$self-
can($method)> is not happy. You can suppress it withno warnings 'MyFoo';
Or
no warnings 'Object::Meta::Plugin::Useful::Generic';
Depending on what level you'd like the warnings to be suppressed.
BUGS
Namespace is not well defined within the hash, nor is it guaranteed that it will never be extended.
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, Object::Meta::Plugin::Useful::Meta, Object::Meta::Plugin::Useful::Greedy.