@EXPORT_OK = qw(...); # symbols to export on request
%EXPORT_TAGS = tag => [...]; # define names for sets of symbols</PRE>
<P>In other files which wish to use ModuleName:</P>
<PRE>
use ModuleName; # import default symbols into my package</PRE>
<PRE>
use ModuleName qw(...); # import listed symbols into my package</PRE>
<PRE>
use ModuleName (); # do not import any symbols</PRE>
<P>
<HR>
<H1><A NAME="description">DESCRIPTION</A></H1>
<P>The Exporter module implements a default <A HREF="../lib/Pod/perlfunc.html#item_import"><CODE>import</CODE></A> method which
many modules choose to inherit rather than implement their own.</P>
<P>Perl automatically calls the <A HREF="../lib/Pod/perlfunc.html#item_import"><CODE>import</CODE></A> method when processing a
<A HREF="../lib/Pod/perlfunc.html#item_use"><CODE>use</CODE></A> statement for a module. Modules and <A HREF="../lib/Pod/perlfunc.html#item_use"><CODE>use</CODE></A> are documented
in <A HREF="../lib/Pod/perlfunc.html">the perlfunc manpage</A> and <A HREF="../lib/Pod/perlmod.html">the perlmod manpage</A>. Understanding the concept of
modules and how the <A HREF="../lib/Pod/perlfunc.html#item_use"><CODE>use</CODE></A> statement operates is important to
understanding the Exporter.</P>
<P>
<H2><A NAME="how to export">How to Export</A></H2>
<P>The arrays <CODE>@EXPORT</CODE> and <CODE>@EXPORT_OK</CODE> in a module hold lists of
symbols that are going to be exported into the users name space by
default, or which they can request to be exported, respectively. The
symbols can represent functions, scalars, arrays, hashes, or typeglobs.
The symbols must be given by full name with the exception that the
ampersand in front of a function is optional, e.g.</P>
<PRE>
@EXPORT = qw(afunc $scalar @array); # afunc is a function
@EXPORT_OK = qw(&bfunc %hash *typeglob); # explicit prefix on &bfunc</PRE>
<P>
<H2><A NAME="selecting what to export">Selecting What To Export</A></H2>