Module::Loaded - 标记模块为已加载或未加载
use Module::Loaded;
$bool = mark_as_loaded('Foo'); # Foo.pm is now marked as loaded
$loc = is_loaded('Foo'); # location of Foo.pm set to the
# loaders location
eval "require 'Foo'"; # is now a no-op
$bool = mark_as_unloaded('Foo'); # Foo.pm no longer marked as loaded
eval "require 'Foo'"; # Will try to find Foo.pm in @INC
在测试应用程序时,您经常会发现自己需要在测试环境中提供通常由外部模块提供的功能。与其手动修改 %INC
来标记这些外部模块为已加载,从而避免 perl 尝试加载它们,这个模块提供了一种非常简单的方法来标记模块为已加载和/或未加载。
将包标记为已加载到 perl 中。PACKAGE
可以是裸字或字符串。
如果模块已经加载,mark_as_loaded
会对此发出警告,并告诉您 PACKAGE
已从哪里加载。
将包标记为未加载到 perl 中,这与 mark_as_loaded
恰好相反。PACKAGE
可以是裸字或字符串。
如果模块已经卸载,mark_as_unloaded
会对此发出警告,并告诉您 PACKAGE
已被卸载。
is_loaded
会告诉您 PACKAGE
是否已被标记为已加载。PACKAGE
可以是裸字或字符串。
如果 PACKAGE
尚未加载,则返回 false;如果成功,则返回加载位置。
请将错误或其他问题报告给 <[email protected]<gt>。
此模块由 Jos Boumans <[email protected]> 编写。
此库是自由软件;您可以根据与 Perl 本身相同的条款重新分发和/或修改它。