X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?p=gitmo%2FMouse.git;a=blobdiff_plain;f=lib%2FMouse.pm;h=67c1e7744d00993d774dd3133853b468061b18bb;hp=2281d357d5e275c0cf95db0db22b922476670e3d;hb=60f6eba91f12d48fa30a8e16abe2db8c95b4d878;hpb=bfcc8a055b739e04da20df0069a9ad329b9429cf diff --git a/lib/Mouse.pm b/lib/Mouse.pm index 2281d35..67c1e77 100644 --- a/lib/Mouse.pm +++ b/lib/Mouse.pm @@ -29,30 +29,7 @@ sub extends { Mouse::Meta::Class->initialize(caller)->superclasses(@_) } sub has { my $meta = Mouse::Meta::Class->initialize(caller); - - my $names = shift; - $names = [$names] if !ref($names); - my $metaclass = 'Mouse::Meta::Attribute'; - my %options = @_; - - if ( my $metaclass_name = delete $options{metaclass} ) { - my $new_class = Mouse::Util::resolve_metaclass_alias( - 'Attribute', - $metaclass_name - ); - if ( $metaclass ne $new_class ) { - $metaclass = $new_class; - } - } - - for my $name (@$names) { - if ($name =~ s/^\+//) { - $metaclass->clone_parent($meta, $name, @_); - } - else { - $metaclass->create($meta, $name, @_); - } - } + $meta->add_attribute(@_); } sub before {