Porta wrote:
I saw it, but unless I use the superloader, it still need to define the
names of the modules I want to use.And, regarding the superloader, I'm lazy
enough to want to use all the packages within a given folder, but not just
every possible module in the world...
Still, a good suggestion.

I usually do something similar with some of my mod_perl programs to preload them into memory but you could probably do something similar. You could use it like:

use MyProject::AutoUse;

And it could look something like:

package MyProject::AutoUse;
use File::Find qw(find);

BEGIN {
    find(
        {
            wanted => sub {
                return unless m/\.pm$/;
                return if /^\.?#/;    # skip emacs droppings
                my $module = $1;
                $module =~ s/\//::/g;

                my $pkg = "MyProject::$module";
                eval "use $pkg;";
                die "Problem loading $pkg:\n\n$@" if $@;
            },
            no_chdir => 1
        },
        '/path/to/project/lib/MyProject'
    );
}


caveat: not tested but should give you the general idea.

--
Michael Peters
Plus Three, LP


#####  CGI::Application community mailing list  ################
##                                                            ##
##  To unsubscribe, or change your message delivery options,  ##
##  visit:  http://www.erlbaum.net/mailman/listinfo/cgiapp    ##
##                                                            ##
##  Web archive:   http://www.erlbaum.net/pipermail/cgiapp/   ##
##  Wiki:          http://cgiapp.erlbaum.net/                 ##
##                                                            ##
################################################################

Reply via email to