X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=lib%2FMouse.pm;h=771d32e6142cbde7913175327816dbf6d86cc185;hb=f6e5adac67578b48faa24c78a44532fa0c0f39ad;hp=4f6e8f9647be01592d3ccf3b3f3be1dfa27a8f4e;hpb=6cfa1e5e70616fb102915489c02d8347ffa912fb;p=gitmo%2FMouse.git diff --git a/lib/Mouse.pm b/lib/Mouse.pm index 4f6e8f9..771d32e 100644 --- a/lib/Mouse.pm +++ b/lib/Mouse.pm @@ -4,14 +4,14 @@ use warnings; use 5.006; use base 'Exporter'; -our $VERSION = '0.30'; +our $VERSION = '0.31'; use Carp 'confess'; use Scalar::Util 'blessed'; use Mouse::Util qw(load_class is_class_loaded); use Mouse::Meta::Attribute; -use Mouse::Meta::Module; # class_of() +use Mouse::Meta::Module; use Mouse::Meta::Class; use Mouse::Object; use Mouse::Util::TypeConstraints; @@ -22,15 +22,15 @@ our %is_removable = map{ $_ => undef } @EXPORT; delete $is_removable{blessed}; delete $is_removable{confess}; -sub extends { Mouse::Meta::Class->initialize(caller)->superclasses(@_) } +sub extends { Mouse::Meta::Class->initialize(scalar caller)->superclasses(@_) } sub has { - my $meta = Mouse::Meta::Class->initialize(caller); + my $meta = Mouse::Meta::Class->initialize(scalar caller); $meta->add_attribute(@_); } sub before { - my $meta = Mouse::Meta::Class->initialize(caller); + my $meta = Mouse::Meta::Class->initialize(scalar caller); my $code = pop; @@ -40,7 +40,7 @@ sub before { } sub after { - my $meta = Mouse::Meta::Class->initialize(caller); + my $meta = Mouse::Meta::Class->initialize(scalar caller); my $code = pop; @@ -50,7 +50,7 @@ sub after { } sub around { - my $meta = Mouse::Meta::Class->initialize(caller); + my $meta = Mouse::Meta::Class->initialize(scalar caller); my $code = pop; @@ -60,7 +60,7 @@ sub around { } sub with { - Mouse::Util::apply_all_roles((caller)[0], @_); + Mouse::Util::apply_all_roles(scalar(caller), @_); } our $SUPER_PACKAGE; @@ -455,6 +455,8 @@ Yappo wu-lee +Goro Fuji (gfx) C<< >> + with plenty of code borrowed from L and L =head1 BUGS