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