Provided by: libexporter-lite-perl_0.02-2_all bug

NAME

       Exporter::Lite - Lightweight exporting of variables

SYNOPSIS

         package Foo;
         use Exporter::Lite;

         # Just like Exporter.
         @EXPORT       = qw($This That);
         @EXPORT_OK    = qw(@Left %Right);

         # Meanwhile, in another piece of code!
         package Bar;
         use Foo;  # exports $This and &That.

DESCRIPTION

       This is an alternative to Exporter intended to provide a lightweight subset of its
       functionality.  It supports "import()", @EXPORT and @EXPORT_OK and not a whole lot else.

       Unlike Exporter, it is not necessary to inherit from Exporter::Lite (ie. no "@ISA =
       qw(Exporter::Lite)" mantra).  Exporter::Lite simply exports its import() function.  This
       might be called a "mix-in".

       Setting up a module to export its variables and functions is simple:

           package My::Module;
           use Exporter::Lite;

           @EXPORT = qw($Foo bar);

       now when you "use My::Module", $Foo and "bar()" will show up.

       In order to make exporting optional, use @EXPORT_OK.

           package My::Module;
           use Exporter::Lite;

           @EXPORT_OK = qw($Foo bar);

       when My::Module is used, $Foo and "bar()" will not show up.  You have to ask for them.
       "use My::Module qw($Foo bar)".

Methods

       Export::Lite has one public method, import(), which is called automaticly when your
       modules is use()'d.

       In normal usage you don't have to worry about this at all.

       import
             Some::Module->import;
             Some::Module->import(@symbols);

           Works just like "Exporter::import()" excepting it only honors @Some::Module::EXPORT
           and @Some::Module::EXPORT_OK.

           The given @symbols are exported to the current package provided they are in
           @Some::Module::EXPORT or @Some::Module::EXPORT_OK.  Otherwise an exception is thrown
           (ie. the program dies).

           If @symbols is not given, everything in @Some::Module::EXPORT is exported.

DIAGNOSTICS

       '"%s" is not exported by the %s module'
           Attempted to import a symbol which is not in @EXPORT or @EXPORT_OK.

       'Can\'t export symbol: %s'
           Attempted to import a symbol of an unknown type (ie. the leading $@% salad wasn't
           recognized).

BUGS and CAVEATS

       Its not yet clear if this is actually any lighter or faster than Exporter.  I know its at
       least on par.

       OTOH, the docs are much clearer and not having to say "@ISA = qw(Exporter)" is kinda nice.

AUTHORS

       Michael G Schwern <schwern@pobox.com>

LICENSE

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

       See http://www.perl.com/perl/misc/Artistic.html

SEE ALSO

       Exporter, Exporter::Simple, UNIVERSAL::exports