Hello Ken Williams, in a previous mail you wrote:

> >     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).
> 
> How widely does this declaration take effect?

Each "use" statement (or more exactly: each call of the "import"
method) instantiates a new set of closures, which are imported
into the calling package as carp, croak, confess and cluck.

The specified pattern is local to these closures.

> Could we do:
> 
> ------ module: Pack::B ---------
> ....
> use Carp::Clan qw(^Pack::);
> ....
> 
> ------ module: Local::A ---------
> ....
> use Carp::Clan qw(^Local::);
> ....
> ---------------------------------

Yes, definitely.

> The idea would be that any errors that occur in Pack::B would skip all 
> the Pack:: namespaces, but could appear to have originated in Local:: 
> namespaces.

Yes, this is possible.

> Likewise vice versa.

Depending on the calling hierarchy, of course, yes.

>  -Ken

Regards,
-- 
    Steffen Beyer <[EMAIL PROTECTED]>
    http://www.engelschall.com/u/sb/whoami/ (Who am I)
    http://www.engelschall.com/u/sb/gallery/ (Fotos Brasil, USA, ...)
    http://www.engelschall.com/u/sb/download/ (Free Perl and C Software)

Reply via email to