Make this trait code a little more malleable
[gitmo/Moose.git] / lib / Moose / Meta / Attribute.pm
index 1f7e017..1a47b7b 100644 (file)
@@ -108,11 +108,12 @@ sub interpolate_class {
     my @traits;
 
     if (my $traits = $options{traits}) {
-        if ( @traits = grep { not $class->does($_) } map {
-            Moose::Util::resolve_metatrait_alias( Attribute => $_ )
-                or
-            $_
-        } @$traits ) {
+        @traits =
+            grep { not $class->does($_) }
+            map { Moose::Util::resolve_metatrait_alias(Attribute => $_) || $_ }
+            @$traits;
+
+        if (@traits) {
             my $anon_class = Moose::Meta::Class->create_anon_class(
                 superclasses => [ $class ],
                 roles        => [ @traits ],