# i.e. first release of 0.XX *must* be 0.XX000. This avoids fBSD ports
# brain damage and presumably various other packaging systems too
-$VERSION = '0.05007';
+$VERSION = '0.05999_04';
sub MODIFY_CODE_ATTRIBUTES {
my ($class,$code,@attrs) = @_;
- unless ($class->can('_attr_cache')) {
- $class->mk_classdata('_attr_cache');
- $class->_attr_cache({});
+ unless ($class->can('__attr_cache')) {
+ $class->mk_classdata('__attr_cache');
+ $class->__attr_cache({});
}
- my $cache = $class->_attr_cache;
- $class->_attr_cache->{$code} = [@attrs];
+ $class->__attr_cache->{$code} = [@attrs];
return ();
}
+sub _attr_cache {
+ my $self = shift;
+ my $cache = $self->can('__attr_cache') ? $self->__attr_cache : {};
+ my $rest = eval { $self->next::method };
+ return $@ ? $cache : { %$cache, %$rest };
+}
+
1;
=head1 NAME
Brandon Black
+Christopher H. Laco
+
Scotty Allen <scotty@scottyallen.com>
sc_
- Robert Sedlacek <phaylon@dunkelheit.at>
-
- Justin Guenther <jguenther@agr.gc.ca>
+ Justin Guenther <guentherj@agr.gc.ca>
+Daisuke Murase <typester@cpan.org>
+
+Scott McWhirter (konobi)
+
=head1 LICENSE
You may distribute this code under the same terms as Perl itself.