use Scalar::Util 'blessed';
-our $VERSION = '0.06';
+our $VERSION = '0.07';
# this is our global stash of both
# MRO's and method dispatch tables
# has_overload_fallback => (1 | 0)
# }
#
-my %MRO;
+our %MRO;
# use these for debugging ...
sub _dump_MRO_table { %MRO }
return if $TURN_OFF_C3;
# make a note to calculate $class
# during INIT phase
- $MRO{$class} = undef;
+ $MRO{$class} = undef unless exists $MRO{$class};
}
## initializers
use Scalar::Util 'blessed';
-our $VERSION = '0.03';
+our $VERSION = '0.04';
our %METHOD_CACHE;
no strict 'refs';
my $found;
foreach my $class (@MRO) {
+ next if (defined $Class::C3::MRO{$class} &&
+ defined $Class::C3::MRO{$class}{methods}{$label});
last if (defined ($found = *{$class . '::' . $label}{CODE}));
}