X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=lib%2FMouse%2FMeta%2FClass.pm;h=50f21b55aef74e71bb0f0014297d636ebbda9f93;hb=refs%2Ftags%2F0.40;hp=ad971783211c67cf917e42bfe9e626da7b7bb0cc;hpb=a25ca8d637c040b2f929b1a23dd62ff63d85f5d1;p=gitmo%2FMouse.git diff --git a/lib/Mouse/Meta/Class.pm b/lib/Mouse/Meta/Class.pm index ad97178..50f21b5 100644 --- a/lib/Mouse/Meta/Class.pm +++ b/lib/Mouse/Meta/Class.pm @@ -44,6 +44,13 @@ sub is_anon_class{ sub roles { $_[0]->{roles} } +sub calculate_all_roles { + my $self = shift; + my %seen; + return grep { !$seen{ $_->name }++ } + map { $_->calculate_all_roles } @{ $self->roles }; +} + sub superclasses { my $self = shift; @@ -474,7 +481,7 @@ Mouse::Meta::Class - The Mouse class metaclass =head1 VERSION -This document describes Mouse version 0.37_06 +This document describes Mouse version 0.40 =head1 METHODS