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

NAME

Test::Stream::Exporter::Meta - Meta object for exporters.

EXPERIMENTAL CODE WARNING

This is an experimental release! Test-Stream, and all its components are still in an experimental phase. This dist has been released to cpan in order to allow testers and early adopters the chance to write experimental new tools with it, or to add experimental support for it into old tools.

PLEASE DO NOT COMPLETELY CONVERT OLD TOOLS YET. This experimental release is very likely to see a lot of code churn. API's may break at any time. Test-Stream should NOT be depended on by any toolchain level tools until the experimental phase is over.

DESCRIPTION

Test::Stream::Exporter uses this package to manage exports.

Every package that uses Test::Stream::Exporter has a Test::Stream::Exporter::Meta object created for it which contains the metadata about the available exports and the kind of export they are.

FUNCTIONS

$meta = Test::Stream::Exporter::Meta::get( $PACKAGE )

Returns a metaobject for $PACKAGE if one exists. Returns undef if one does not exist. This can be used as either a method or a function, the last argument is the only one that is used.

METHODS

$meta = Test::Stream::Exporter::Meta->new( $PACKAGE )

Constructs a metaobject for $PACKAGE and returns it. If one already exists, it is returned.

$meta->add( $DEFAULT, $SUBNAME )
$meta->add( $DEFAULT, $SUBNAME => $SUBREF )

Add an export named $SUBNAME. If a ref is provided it will be used, otherwise it will grab the sub from the package using $SUBNAME. The fist argument is a toggle, true means the sub is exported by default, false means it is not exported by default.

$meta->add_bulk( $DEFAULT, $SUBNAME, $SUBNAME, ... )

Add all the subnames given as arguments to the list of exports. The subs of the given names are taken as the references. The first argument is a toggle, true means the susb should be exported by default, false means they should not be.

$default_ref = $meta->default()

Get the arrayref of default exports. This is not a copy of the arrayref, modifying this would modify the internal list of defaults.

$exports_ref = $meta->exports()

Returns a HASHREF of $SUBNAME => $CODEREF values of all avialable exports.

SOURCE

The source code repository for Test::Stream can be found at http://github.com/Test-More/Test-Stream/.

MAINTAINERS

Chad Granum <exodist@cpan.org>

AUTHORS

Chad Granum <exodist@cpan.org>
Kent Fredric <kentnl@cpan.org>

COPYRIGHT

Copyright 2015 Chad Granum <exodist7@gmail.com>.

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

See http://www.perl.com/perl/misc/Artistic.html