stas 2004/09/09 15:41:16 Modified: src/docs/2.0/api/ModPerl Util.pod Log: extend on what unload_module does Revision Changes Path 1.13 +15 -7 modperl-docs/src/docs/2.0/api/ModPerl/Util.pod Index: Util.pod =================================================================== RCS file: /home/cvs/modperl-docs/src/docs/2.0/api/ModPerl/Util.pod,v retrieving revision 1.12 retrieving revision 1.13 diff -u -u -r1.12 -r1.13 --- Util.pod 9 Sep 2004 22:29:05 -0000 1.12 +++ Util.pod 9 Sep 2004 22:41:16 -0000 1.13 @@ -163,16 +163,16 @@ =head2 C<unload_module> -Unloads a module from the current perl interpreter in the safest way +Unloads a stash from the current Perl interpreter in the safest way possible. - ModPerl::Util::unload_module($module); + ModPerl::Util::unload_module($stash); =over 4 -=item arg1: C<$module> (scalar) +=item arg1: C<$stash> ( string ) -The package (stash) name to unload. +The Perl stash to unload. e.g. C<MyApache::MyData>. =item ret: no return value @@ -180,14 +180,22 @@ =back -Unloading a module from Perl is a complicated business. This function -tries very hard to do the right thing. After calling this module, it -should be safe to C<use> a new version of the module. +Unloading a Perl stash is a complicated business. This function tries +very hard to do the right thing. After calling this module, it should +be safe to C<use> a new version of the module. References to module elements (function, variables, etc) that were taken from outside the unloaded module will still be valid. +This function may wipe off things loaded by other modules, if the +latter have inserted things into the C<$stash> it was told to unload. +C<unload_module()> takes care not to delete sub-stashes when deleting +the requested stash. So for example if C<CGI> and C<CGI::Carp> are +loaded, calling C<unload_module('CGI')> won't affect C<CGI::Carp>. + +If the module's stash had a corresponding XS shared object loaded it +will be unloaded as well.
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]