adding the MooseX::MetaDescription stuff distilled from Ernst
[gitmo/MooseX-MetaDescription.git] / lib / MooseX / MetaDescription / Meta / Class.pm
1 package MooseX::MetaDescription::Meta::Class;
2 use Moose;
3
4 use MooseX::MetaDescription::Description::Class;
5
6 our $VERSION   = '0.01';
7 our $AUTHORITY = 'cpan:STEVAN';
8
9 extends 'Moose::Meta::Class';
10
11 has 'description' => (
12     is      => 'ro',
13     isa     => 'HashRef',
14     lazy    => 1,   
15     default => sub { +{} },
16 );
17
18 has 'metadescription' => (
19     is      => 'ro',
20     isa     => 'MooseX::MetaDescription::Description',
21     lazy    => 1,   
22     default => sub {
23         my $self = shift;
24         
25         # TODO: handle traits ...
26         
27         MooseX::MetaDescription::Description::Class->new(
28             %{$self->description},
29             class => $self,
30         )
31     },
32 );
33
34 no Moose; 1;
35
36 __END__
37
38 =pod
39
40 =head1 NAME
41
42 MooseX::MetaDescription::Meta::Class - A Moosey solution to this problem
43
44 =head1 SYNOPSIS
45
46   use MooseX::MetaDescription::Meta::Class;
47
48 =head1 DESCRIPTION
49
50 =head1 METHODS 
51
52 =over 4
53
54 =item B<>
55
56 =back
57
58 =head1 BUGS
59
60 All complex software has bugs lurking in it, and this module is no 
61 exception. If you find a bug please either email me, or add the bug
62 to cpan-RT.
63
64 =head1 AUTHOR
65
66 Stevan Little E<lt>stevan.little@iinteractive.comE<gt>
67
68 =head1 COPYRIGHT AND LICENSE
69
70 Copyright 2008 Infinity Interactive, Inc.
71
72 L<http://www.iinteractive.com>
73
74 This library is free software; you can redistribute it and/or modify
75 it under the same terms as Perl itself.
76
77 =cut