|
NAMEClass::Mixin - API for aliasing methods to/from other classesOVERVIEWClass::Mixin provides a way to mix methods from one class into another, such that the target class can use both its methods as well as those of the source class.The primary advantage is that the behavior of a class can be modified to effectively be another class without changing any of the calling code -- just requires using the new class that mixes into the original. SYNOPSIS# class1.pm package class1; sub sub1 { return 11 }; ... # class2.pm package class2; use Class::Mixin to=> 'class1'; sub sub2 { return 22 }; # Original calling code use class1; print class1->sub1; # 11 print class1->can('sub2'); # false # Updated calling code use class1; use class2; # performs the mixing-in print class1->sub1; # 11 print class1->can('sub2'); # true print class1->sub2; # 22 <-- note class1 now has the class2 method METHODSimportMethod used when loading class to import symbols or perform some function. In this case we take the calling classes methods and map them into the class passed in as a parameter.
Destructor DESTROYThis modules uses a destructor for un-mixing methods. This is done in the case that this module is unloaded for some reason. It will return modules to their original states.
resyncFunction used to process registered 'mixins'. Typically automatically called once immediately after program compilation. Sometimes though you may want to call it manually if a modules is reloaded.
AUTHORS
BUGSPlease report any bugs or feature requests to "bug-class-mixin at rt.cpan.org", or through the web interface at <http://rt.cpan.org/NoAuth/ReportBug.html?Queue=Class-Mixin>. I will be notified, and then you'll automatically be notified of progress on your bug as I make changes.SUPPORTYou can find documentation for this module with the perldoc command.perldoc Class::Mixin You can also look for information at:
COPYRIGHT AND LICENSECopyright (C) 2003-2008 Stathy G. TouloumisThis is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
Visit the GSP FreeBSD Man Page Interface. |