the repository now lives at https://github.com/moose/MooseX-ClassAttributes
[gitmo/MooseX-ClassAttribute.git] / lib / MooseX / ClassAttribute / Meta / Role / Attribute.pm
CommitLineData
88b7f2c8 1package MooseX::ClassAttribute::Meta::Role::Attribute;
2
3use strict;
4use warnings;
5
6use List::MoreUtils qw( uniq );
7
8use namespace::autoclean;
9use Moose;
10
11extends 'Moose::Meta::Role::Attribute';
12
13sub new {
14 my ( $class, $name, %options ) = @_;
15
16 $options{traits} = [
17 uniq( @{ $options{traits} || [] } ),
63fcc508 18 'MooseX::ClassAttribute::Trait::Attribute'
88b7f2c8 19 ];
20
21 return $class->SUPER::new( $name, %options );
22}
23
241;
04b89789 25
0d0bf8c3 26# ABSTRACT: An attribute metaclass for class attributes in roles
27
04b89789 28__END__
29
30=pod
31
04b89789 32=head1 DESCRIPTION
33
34This class overrides L<Moose::Meta::Role::Attribute> to support class
35attribute declaration in roles.
36
04b89789 37=head1 BUGS
38
39See L<MooseX::ClassAttribute> for details.
40
04b89789 41=cut