in reply to Module 'use' chains
A simpler method is to just leave off the package line in your Include module. The module automatically starts in the package of the caller, and thus the chain-included modules will automatically export to the correct place.
# test.pl use warnings; use strict; package foo; use Include; funcA(); funcB(); funcC();
# Include.pm use myA; use myB; use myC; 1;
package myA; use base 'Exporter'; our @EXPORT = qw(funcA); sub funcA { warn "funcA"; } 1;
package myB; use base 'Exporter'; our @EXPORT = qw(funcB); sub funcB { warn "funcB"; } 1;
package myC; use base 'Exporter'; our @EXPORT = qw(funcC); sub funcC { warn "funcC"; } 1;
Output:
funcA at myA.pm line 7. funcB at myB.pm line 7. funcC at myC.pm line 7.
bbfu
Black flowers blossom
Fearless on my breath
|
---|
Replies are listed 'Best First'. | |
---|---|
Re^2: Module 'use' chains
by ikegami (Patriarch) on Aug 10, 2006 at 05:40 UTC | |
Re^2: Module 'use' chains
by tilly (Archbishop) on Aug 10, 2006 at 05:33 UTC | |
by bbfu (Curate) on Aug 10, 2006 at 05:42 UTC |
In Section
Seekers of Perl Wisdom