update pod for all modules
[gitmo/MooseX-ClassAttribute.git] / lib / MooseX / ClassAttribute / Meta / Role / Attribute.pm
1 package MooseX::ClassAttribute::Meta::Role::Attribute;
2
3 use strict;
4 use warnings;
5
6 use List::MoreUtils qw( uniq );
7
8 use namespace::autoclean;
9 use Moose;
10
11 extends 'Moose::Meta::Role::Attribute';
12
13 sub new {
14     my ( $class, $name, %options ) = @_;
15
16     $options{traits} = [
17         uniq( @{ $options{traits} || [] } ),
18         'MooseX::ClassAttribute::Trait::Attribute'
19     ];
20
21     return $class->SUPER::new( $name, %options );
22 }
23
24 1;
25
26 __END__
27
28 =pod
29
30 =head1 NAME
31
32 MooseX::ClassAttribute::Meta::Role::Attribute - An attribute metaclass for class attributes in roles
33
34 =head1 DESCRIPTION
35
36 This class overrides L<Moose::Meta::Role::Attribute> to support class
37 attribute declaration in roles.
38
39 =head1 AUTHOR
40
41 Dave Rolsky, C<< <autarch@urth.org> >>
42
43 =head1 BUGS
44
45 See L<MooseX::ClassAttribute> for details.
46
47 =head1 COPYRIGHT & LICENSE
48
49 Copyright 2007-2008 Dave Rolsky, All Rights Reserved.
50
51 This program is free software; you can redistribute it and/or modify
52 it under the same terms as Perl itself.
53
54 =cut