mirror of
https://github.com/Ponce/slackbuilds
synced 2024-12-01 01:00:03 +01:00
aecbeedba7
Signed-off-by: B. Watson <yalhcru@gmail.com>
25 lines
1.1 KiB
Text
25 lines
1.1 KiB
Text
Carp::Clan - Report errors from perspective of caller of a "clan"
|
|
of modules.
|
|
|
|
This module is based on "Carp.pm" from Perl 5.005_03. It has been
|
|
modified to skip all package names matching the pattern given in the
|
|
"use" statement inside the "qw()" term (or argument list).
|
|
|
|
Suppose you have a family of modules or classes named "Pack::A",
|
|
"Pack::B" and so on, and each of them uses "Carp::Clan qw(^Pack::);"
|
|
(or at least the one in which the error or warning gets raised).
|
|
|
|
Thus when for example your script "tool.pl" calls module "Pack::A",
|
|
and module "Pack::A" calls module "Pack::B", an exception raised in
|
|
module "Pack::B" will appear to have originated in "tool.pl" where
|
|
"Pack::A" was called, and not in "Pack::A" where "Pack::B" was called,
|
|
as the unmodified "Carp.pm" would try to make you believe :-).
|
|
|
|
This works similarly if "Pack::B" calls "Pack::C" where the exception
|
|
is raised, etcetera.
|
|
|
|
In other words, this blames all errors in the "Pack::*" modules on the
|
|
user of these modules, i.e., on you. ;-)
|
|
|
|
For more informations, see:
|
|
https://metacpan.org/pod/distribution/Carp-Clan/lib/Carp/Clan.pod
|