Checking in changes prior to tagging of version 0.90.
[gitmo/Mouse.git] / lib / Mouse / Meta / Role.pm
index fe6575e..102b49c 100644 (file)
@@ -20,7 +20,6 @@ sub _construct_meta {
     if($class ne __PACKAGE__){
         $self->meta->_initialize_object($self, \%args);
     }
-
     return $self;
 }
 
@@ -64,8 +63,6 @@ sub add_attribute {
     return;
 }
 
-
-# Moose uses Application::ToInstance, Application::ToClass, Application::ToRole
 sub apply {
     my $self     = shift;
     my $consumer = shift;
@@ -74,18 +71,11 @@ sub apply {
     return Mouse::Meta::Role::Application->new(@_)->apply($self, $consumer);
 }
 
-
 sub combine {
     my($self, @role_specs) = @_;
 
     require 'Mouse/Meta/Role/Composite.pm';
-    my $composite = Mouse::Meta::Role::Composite->create_anon_role();
-
-    foreach my $role_spec (@role_specs) {
-        my($role_name, $args) = @{$role_spec};
-        $role_name->meta->apply($composite, %{$args});
-    }
-    return $composite;
+    return Mouse::Meta::Role::Composite->new(roles => \@role_specs);
 }
 
 sub add_before_method_modifier;
@@ -141,7 +131,7 @@ Mouse::Meta::Role - The Mouse Role metaclass
 
 =head1 VERSION
 
-This document describes Mouse version 0.70
+This document describes Mouse version 0.90
 
 =head1 DESCRIPTION