MooseX::MetaDescription::Meta::Class - Custom class metaclass for
meta-descriptions
package Foo;
use metaclass 'MooseX::MetaDescription::Meta::Class' => (
description => {
'Hello' => 'World',
}
);
use Moose;
package Bar;
use Moose;
extends 'Foo';
# always add it *after* the extends
__PACKAGE__->meta->description->{'Hello'} = 'Earth';
package Baz;
use Moose;
extends 'Bar';
package Gorch;
use metaclass 'MooseX::MetaDescription::Meta::Class' => (
description => {
'Hello' => 'World'
}
);
use Moose;
extends 'Baz';
# ...
Foo->meta->description # { 'Hello' => 'World', 'World' => 'Hello' }
Bar->meta->description # { 'Hello' => 'Earth', 'World' => 'Hello' } # change one, inherit the other
Baz->meta->description # { 'Hello' => 'Earth', 'World' => 'Hello' } # inherit both
Gorch->meta->description # { 'Hello' => 'World' } # overrides all, no inheritance
This module provides the custom metaclass to add Meta Descriptions to your
classes. It provides a limited degree of inheritance of meta-descriptions, the
details of which are shown above in the SYNOPSIS section.
NOTE: these are methods composed into this class from
MooseX::MetaDescription::Meta::Trait refer to that module for the complete
description.
- description
- metadescription_classname
- metadescription
- meta
All complex software has bugs lurking in it, and this module is no exception. If
you find a bug please either email me, or add the bug to cpan-RT.
Stevan Little <stevan.little@iinteractive.com>
Copyright 2008 Infinity Interactive, Inc.
<http://www.iinteractive.com>
This library is free software; you can redistribute it and/or
modify it under the same terms as Perl itself.