NAME
    Import::Base - Import a set of modules into the calling module

VERSION
    version 0.002

SYNOPSIS
        package My::Base;
        use base 'Import::Base';
        sub modules {
            my ( $class, %args ) = @_;
            return (
                strict => [],
                warnings => [],
            );
        }
        1;

        package My::Module;
        use My::Base;

DESCRIPTION
    This module makes it easier to build and manage a base set of imports.
    Rather than importing a dozen modules in each of your project's modules,
    you simply import one module and get all the other modules you want.
    This reduces your module boilerplate from 12 lines to 1.

METHODS
  modules( %args )
    Prepare the list of modules to import. %args comes from the caller's
    "use" line. Returns a list of MODULE => [ import() args ]. MODULE may
    appear multiple times.

SEE ALSO
    ToolSet
        This is very similar, but does not appear to allow subclasses to
        remove imports from the list of things to be imported. By having the
        module list be a static array, we can modify it further in more
        levels of subclasses.

    Toolkit
        This one requires configuration files in a home directory, so is not
        shippable.

    rig This one also requires configuration files in a home directory, so
        is not shippable.

AUTHOR
    Doug Bell <preaction@cpan.org>

COPYRIGHT AND LICENSE
    This software is copyright (c) 2014 by Doug Bell.

    This is free software; you can redistribute it and/or modify it under
    the same terms as the Perl 5 programming language system itself.

