The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

Importer::Zim

VERSION

version 0.2.0

SYNOPSIS

    use Importer::Zim 'Scalar::Util' => 'blessed';
    use Importer::Zim 'Scalar::Util' => 'blessed' => { -as => 'typeof' };

    use Importer::Zim 'Mango::BSON' => ':bson';

    use Importer::Zim 'Foo' => { -version => '3.0' } => 'foo';

DESCRIPTION

This pragma imports subroutines from other modules in a clean way. "Clean imports" here mean that the import symbols are available only at some scope.

Importer::Zim relies on pluggable backends which give a precise meaning to "available at some scope". For example, Importer::Zim::Lexical creates lexical subs that go away as soon the lexical scope ends.

By default, Importer::Zim looks at package variables @EXPORT, @EXPORT_OK and %EXPORT_TAGS to decide what are exportable subroutines. It tries its best to implement a behavior akin to Exporter without the corresponding package polution.

NAME

Importer::Zim - Import functions à la Invader Zim

METHODS

import

    Importer::Zim->import($class => @imports);
    Importer::Zim->import($class => \%opts => @imports);

SEE ALSO

zim

Importer and Lexical::Importer

lexically

AUTHOR

Adriano Ferreira <ferreira@cpan.org>

CONTRIBUTOR

Adriano Ferreira <a.r.ferreira@gmail.com>

COPYRIGHT AND LICENSE

This software is copyright (c) 2017 by Adriano Ferreira.

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