MooseX::MetaDescription::Meta::Trait - Custom class meta-trait for
meta-descriptions
package Foo;
use Moose;
has 'baz' => (
# apply this as a trait to your attribute
traits => [ 'MooseX::MetaDescription::Meta::Trait' ],
is => 'ro',
isa => 'Str',
default => sub { 'Foo::baz' },
description => {
bar => 'Foo::baz::bar',
gorch => 'Foo::baz::gorch',
}
);
This is the core of the Meta Description functionality, it is a role that is
done by both MooseX::MetaDescription::Meta::Attribute and
MooseX::MetaDescription::Meta::Class and can be used on it's own as a
meta-attribute trait.
- description
- The description "HASH" ref is stored
here.
- metadescription_classname
- This provides the name of the metadescription class, currently this
defaults to MooseX::MetaDescription::Description. It is read only and so
can only be specified at instance construction time.
- metadescription
- This is the instance of the class specified in
"metadescription_classname" it is
generated lazily and is also read-only. In general you will never need to
set this yourself, but simply set
"metadescription_classname" and it will
all just work.
- prepare_traits_for_application ($traits)
- This is passed the ARRAY ref of trait names so that they can be
pre-processed before they are applied to the metadescription. It is
expected to return an ARRAY ref of trait names to be applied. By default
it simply returns what it is given.
- meta
- The Moose::Role metaclass.
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.