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
- $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
- @params = $export->required_specs()
- Documented for subclassing purposes. This should always return a list of
required parameters at construction time.
- Documented for subclassing purposes. This takes care of cleanup related to
storing data in an inside-out objects system.
Chad Granum email@example.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.