take a stab at a description
[gitmo/MooseX-MetaDescription.git] / lib / MooseX / MetaDescription.pm
CommitLineData
c13295c8 1package MooseX::MetaDescription;
2use Moose;
3
91297cb4 4our $VERSION = '0.01';
5our $AUTHORITY = 'cpan:STEVAN';
6
c13295c8 7use MooseX::MetaDescription::Meta::Class;
8use MooseX::MetaDescription::Meta::Attribute;
5d49532a 9use MooseX::MetaDescription::Description;
c13295c8 10
c13295c8 11no Moose; 1;
12
13__END__
14
15=pod
16
17=head1 NAME
18
48b1f986 19MooseX::MetaDescription - A framework for adding additional metadata to Moose classes
c13295c8 20
21=head1 SYNOPSIS
22
17f25b49 23 package Foo;
24 use metaclass 'MooseX::MetaDescription::Meta::Class';
25 use Moose;
26
27 __PACKAGE__->meta->description->{'Hello'} = 'World';
28
29 has 'bar' => (
30 metaclass => 'MooseX::MetaDescription::Meta::Attribute',
31 is => 'ro',
32 isa => 'Str',
33 default => sub { 'Foo::bar' },
34 description => {
35 baz => 'Foo::bar::baz',
36 }
37 );
38
39 ...
40
41 $foo->meta->description; # { 'Hello' => 'World' }
42 $foo->meta->get_attribute('bar')->description; # { baz => 'Foo::bar::baz' }
c13295c8 43
44=head1 DESCRIPTION
45
0cb2eb0f 46MooseX::MetaDescription allows you to add arbitrary out of band metadata to your Moose classes and attributes.
47
c13295c8 48=head1 METHODS
49
50=over 4
51
52=item B<>
53
54=back
55
56=head1 BUGS
57
58All complex software has bugs lurking in it, and this module is no
59exception. If you find a bug please either email me, or add the bug
60to cpan-RT.
61
62=head1 AUTHOR
63
48b1f986 64Code and Design originally by Jonathan Rockway in the Ernst module,
65extracted and refactored by:
66
c13295c8 67Stevan Little E<lt>stevan.little@iinteractive.comE<gt>
68
69=head1 COPYRIGHT AND LICENSE
70
71Copyright 2008 Infinity Interactive, Inc.
72
73L<http://www.iinteractive.com>
74
75This library is free software; you can redistribute it and/or modify
76it under the same terms as Perl itself.
77
78=cut