NAME

Exporter::Tiny - an exporter with the features of Sub::Exporter but only core dependencies

SYNOPSIS

package MyUtils;
use base "Exporter::Tiny";
our @EXPORT = qw(frobnicate);
sub frobnicate { ... }
1;

package MyScript;
use MyUtils "frobnicate" => { -as => "frob" };
print frob(42);
exit;

DESCRIPTION

Exporter::Tiny supports many of Sub::Exporter's external-facing features including renaming imported functions with the -as, -prefix and -suffix options; explicit destinations with the into option; and alternative installers with the installer option. But it's written in only about 40% as many lines of code and with zero non-core dependencies.

Its internal-facing interface is closer to Exporter.pm, with configuration done through the @EXPORT, @EXPORT_OK and %EXPORT_TAGS package variables.

If you are trying to write a module that inherits from Exporter::Tiny, then look at:

If you are trying to use a module that inherits from Exporter::Tiny, then look at:

BUGS

Please report any bugs to https://github.com/tobyink/p5-exporter-tiny/issues.

SUPPORT

IRC: support is available through in the #moops channel on irc.perl.org.

SEE ALSO

Simplified interface to this module: Exporter::Shiny.

Other interesting exporters: Sub::Exporter, Exporter.

AUTHOR

Toby Inkster <tobyink@cpan.org>.

COPYRIGHT AND LICENCE

This software is copyright (c) 2013-2014, 2017, 2022 by Toby Inkster.

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

DISCLAIMER OF WARRANTIES

THIS PACKAGE IS PROVIDED "AS IS" AND WITHOUT ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.