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 with

    no 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.