X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=lib%2FMouse%2FMeta%2FClass.pm;h=661aad06ff3754fd584bd8576df4c47a63de494e;hb=4e31595cef06f35cd442a54206f3c1a05c1ac31f;hp=796872acb393f956b5c2a90cff9d7c57a1ba66d3;hpb=50dc6ee5748409751a8e0ef57a0e7c93e2c48cb4;p=gitmo%2FMouse.git diff --git a/lib/Mouse/Meta/Class.pm b/lib/Mouse/Meta/Class.pm index 796872a..661aad0 100644 --- a/lib/Mouse/Meta/Class.pm +++ b/lib/Mouse/Meta/Class.pm @@ -3,12 +3,9 @@ package Mouse::Meta::Class; use strict; use warnings; -use Scalar::Util 'blessed'; +use Mouse::Util qw/get_linear_isa blessed/; use Carp 'confess'; -use MRO::Compat; -use Class::Method::Modifiers (); - do { my %METACLASS_CACHE; @@ -94,7 +91,7 @@ sub get_attribute_map { $_[0]->{attributes} } sub has_attribute { exists $_[0]->{attributes}->{$_[1]} } sub get_attribute { $_[0]->{attributes}->{$_[1]} } -sub linearized_isa { @{ mro::get_linear_isa($_[0]->name) } } +sub linearized_isa { @{ get_linear_isa($_[0]->name) } } sub clone_object { my $class = shift; @@ -133,6 +130,7 @@ sub attribute_metaclass { "Mouse::Meta::Class" } sub add_before_method_modifier { my ($self, $name, $code) = @_; + require Class::Method::Modifiers; Class::Method::Modifiers::_install_modifier( $self->name, 'before', @@ -143,6 +141,7 @@ sub add_before_method_modifier { sub add_around_method_modifier { my ($self, $name, $code) = @_; + require Class::Method::Modifiers; Class::Method::Modifiers::_install_modifier( $self->name, 'around', @@ -153,6 +152,7 @@ sub add_around_method_modifier { sub add_after_method_modifier { my ($self, $name, $code) = @_; + require Class::Method::Modifiers; Class::Method::Modifiers::_install_modifier( $self->name, 'after',