sourCEntral - mobile manpages




Exporter::Declare::Export − Base class for all export objects.


All exports are refs, and all are blessed. This class tracks some per-export information via an inside-out objects system. All things an export may need to do, such as inject itself into a package are handled here. This allows some complicated, or ugly logic to be abstracted out of the exporter and metadata classes.


$class−>new( $ref, exported_by => $package, %data )

Create a new export from $ref. You must specify the name of the class doing the exporting.

$export−>inject( $package, $name, @args )

This will inject the export into $package under $name. @args are ignored in most cases. See Exporter::Declare::Export::Generator for an example where they are used.

$package = $export−>exported_by()

Returns the name of the package from which this export was originally exported.

@params = $export−>required_specs()

Documented for subclassing purposes. This should always return a list of required parameters at construction time.

$export−> DESTROY ()

Documented for subclassing purposes. This takes care of cleanup related to storing data in an inside-out objects system.


Chad Granum exodist7 AT gmail DOT com


Copyright (C) 2010 Chad Granum

Exporter-Declare is free software; Standard perl licence.

Exporter-Declare is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY ; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the license for more details.