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

NAME

namespace::clean::xs - Keep imports and functions out of your namespace, in XS

SYNOPSIS

    use namespace::clean::xs; # be lean and mean

DESCRIPTION

See namespace::clean for the complete description of this module's logic.

COMPABILITY

All methods from namespace::clean are implemented in namespace::clean::xs, but individual functions have the following differences:

"get_class_store"

Structure of the returned hash is the same, but it has nothing in common with the internal storage. Modifications of it are in vain.

While namespace::clean saves this info forever, this module deletes it after namespace cleanup is done (as it never happens for a second time, like the original module), so you can see valid data only for a short time.

"get_functions"

In the returned hash function stubs and constants are not expanded. While you can still call the latter and can't call the former, you may get different error messages.

"unimport"

Will croak on unrecognized options.

"import"

Will croak on unrecognized options.

This module tries to minimize memory impact after it's usage, so it won't expand to full globs constant/stub functions. It also removes from the old package symbols without data completely.

SEE ALSO

COPYRIGHT AND LICENSE

Copyright (C) 2016 by Sergey Aleynikov

This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself, either Perl version 5.10.1 or, at your option, any later version of Perl 5 you may have available.