DOKK / manpages / debian 12 / libexporter-tiny-perl / Exporter::Tiny.3pm.en
Exporter::Tiny(3pm) User Contributed Perl Documentation Exporter::Tiny(3pm)

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

   package MyUtils;
   use base "Exporter::Tiny";
   our @EXPORT = qw(frobnicate);
   sub frobnicate { ... }
   1;
   package MyScript;
   use MyUtils "frobnicate" => { -as => "frob" };
   print frob(42);
   exit;

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:

  • Exporter::Tiny::Manual::QuickStart
  • Exporter::Tiny::Manual::Exporting

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

Exporter::Tiny::Manual::Importing

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

IRC: support is available through in the #moops channel on irc.perl.org <http://www.irc.perl.org/channels.html>.

Simplified interface to this module: Exporter::Shiny.

Other interesting exporters: Sub::Exporter, Exporter.

Toby Inkster <tobyink@cpan.org>.

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.

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.

2023-01-02 perl v5.36.0