use MRO::Compat;
use Carp 'confess';
-use Class::Load ();
+use Class::Load 0.07 ();
use Scalar::Util 'weaken', 'isweak', 'reftype', 'blessed';
use Data::OptList;
use Try::Tiny;
}
sub load_class {
- Class::MOP::Deprecated::deprecated(
- 'The Class::MOP::load_class subroutine is deprecated.'
- . ' Please use Class::Load instead.' );
goto &Class::Load::load_class;
}
sub load_first_existing_class {
- Class::MOP::Deprecated::deprecated(
- 'The Class::MOP::load_first_existing_class subroutine is deprecated.'
- . ' Please use Class::Load instead.' );
goto &Class::Load::load_first_existing_class;
}
sub is_class_loaded {
- Class::MOP::Deprecated::deprecated(
- 'The Class::MOP::is_class_loaded subroutine is deprecated.'
- . ' Please use Class::Load instead.' );
goto &Class::Load::is_class_loaded;
}
=back
+Some utility functions (such as C<Class::MOP::load_class>) that were
+previously defined in C<Class::MOP> regarding loading of classes have been
+extracted to L<Class::Load>. Please see L<Class::Load> for documentation.
+
=head1 SEE ALSO
=head2 Books
and offers an excellent introduction section which delves into the topic of
metaclass compatibility.
-L<http://www.iam.unibe.ch/~scg/Archive/Papers/Duca05ySafeMetaclassTrait.pdf>
+L<http://scg.unibe.ch/archive/papers/Duca05ySafeMetaclassTrait.pdf>
=item "Safe Metaclass Programming"