make this a bit more extensible, for moose's benefit
Jesse Luehrs [Thu, 23 Sep 2010 07:48:07 +0000 (02:48 -0500)]
lib/Class/MOP/Class.pm
t/010_self_introspection.t

index 334c57f..1afc676 100644 (file)
@@ -125,13 +125,15 @@ sub _real_ref_name {
         : ref $self;
 }
 
+sub _meta_method_class { 'Class::MOP::Method::Meta' }
+
 sub _add_meta_method {
     my $self = shift;
     my $existing_method = $self->find_method_by_name('meta');
     return if $existing_method
-           && $existing_method->isa('Class::MOP::Method::Meta');
+           && $existing_method->isa($self->_meta_method_class);
     $self->add_method(
-        'meta' => Class::MOP::Method::Meta->wrap(
+        'meta' => $self->_meta_method_class->wrap(
             name                 => 'meta',
             package_name         => $self->name,
             associated_metaclass => $self,
index 93ac3c5..dbf5c4e 100644 (file)
@@ -93,7 +93,7 @@ my @class_mop_class_methods = qw(
         find_method_by_name find_all_methods_by_name find_next_method_by_name
 
         add_before_method_modifier add_after_method_modifier add_around_method_modifier
-        _add_meta_method
+        _add_meta_method _meta_method_class
 
     _attach_attribute
     _post_add_attribute