Module::Loaded - mark modules as loaded or unloaded
Contents
Bug Reports
Please report bugs or other issues to <bug-module-loaded@rt.cpan.org<gt>.
Copyright
This library is free software; you may redistribute and/or modify it under the same terms as Perl itself.
perl v5.40.1 2025-07-27 Module::Loaded(3perl)
Description
When testing applications, often you find yourself needing to provide functionality in your test
environment that would usually be provided by external modules. Rather than munging the %INC by hand to
mark these external modules as loaded, so they are not attempted to be loaded by perl, this module offers
you a very simple way to mark modules as loaded and/or unloaded.
Functions
$bool=mark_as_loaded(PACKAGE);
Marks the package as loaded to perl. "PACKAGE" can be a bareword or string.
If the module is already loaded, "mark_as_loaded" will carp about this and tell you from where the
"PACKAGE" has been loaded already.
$bool=mark_as_unloaded(PACKAGE);
Marks the package as unloaded to perl, which is the exact opposite of "mark_as_loaded". "PACKAGE" can be
a bareword or string.
If the module is already unloaded, "mark_as_unloaded" will carp about this and tell you the "PACKAGE" has
been unloaded already.
$loc=is_loaded(PACKAGE);
"is_loaded" tells you if "PACKAGE" has been marked as loaded yet. "PACKAGE" can be a bareword or string.
It returns falls if "PACKAGE" has not been loaded yet and the location from where it is said to be loaded
on success.
Name
Module::Loaded - mark modules as loaded or unloaded
Synopsis
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
