whoops
[gitmo/Class-C3.git] / lib / Class / C3.pm
index 9d5a1d7..6a23d4d 100644 (file)
@@ -139,9 +139,9 @@ sub _remove_method_dispatch_table {
     no strict 'refs';
     delete ${"${class}::"}{"()"} if $MRO{$class}->{has_overload_fallback};    
     foreach my $method (keys %{$MRO{$class}->{methods}}) {
-        delete ${"${class}::"}{$method};
-          #if defined ${"${class}::"}{$method}{CODE} &&
-          #   ${"${class}::"}{$method}{CODE} eq $MRO{$class}->{methods}->{$method}->{code};        
+        delete ${"${class}::"}{$method}
+            if defined *{"${class}::${method}"}{CODE} && 
+               (*{"${class}::${method}"}{CODE} eq $MRO{$class}->{methods}->{$method}->{code});       
     }   
 }
 
@@ -218,7 +218,6 @@ sub method {
         last unless $method_caller eq '(eval)';
     }
     my @label    = (split '::', $method_caller);    
-    #my @label    = (split '::', (caller(1))[3]);
     my $label    = pop @label;
     my $caller   = join '::' => @label;    
     my $self     = $_[0];
@@ -479,9 +478,9 @@ module's test suite.
  ---------------------------- ------ ------ ------ ------ ------ ------ ------
  File                           stmt   bran   cond    sub    pod   time  total
  ---------------------------- ------ ------ ------ ------ ------ ------ ------
- Class/C3.pm                    98.6   88.6   75.0   96.0  100.0   70.4   95.2
+ Class/C3.pm                    98.6   90.9   73.3   96.0  100.0   96.8   95.3
  ---------------------------- ------ ------ ------ ------ ------ ------ ------
- Total                          98.6   88.6   75.0   96.0  100.0   70.4   95.2
+ Total                          98.6   90.9   73.3   96.0  100.0   96.8   95.3
  ---------------------------- ------ ------ ------ ------ ------ ------ ------
 
 =head1 SEE ALSO