Tomas Doran > MooseX-MetaDescription-0.06 > MooseX::MetaDescription::Meta::Trait

Download:
MooseX-MetaDescription-0.06.tar.gz

Dependencies

Annotate this POD

CPAN RT

Open  1
View/Report Bugs
Module Version: 0.06   Source  

NAME ^

MooseX::MetaDescription::Meta::Trait - Custom class meta-trait for meta-descriptions

SYNOPSIS ^

  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',
      }
  );

DESCRIPTION ^

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.

METHODS ^

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.

BUGS ^

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.

AUTHOR ^

Stevan Little <stevan.little@iinteractive.com>

COPYRIGHT AND LICENSE ^

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.

syntax highlighting: