namespace::clean - Keep imports and functions out of your namespace
VERSION
- 0.07
+ 0.08
SYNOPSIS
package Foo;
1;
DESCRIPTION
+ Keeping packages clean
When you define a function, or import one, into a Perl package, it will
naturally also be available as a method. This does not per se cause
problems, but it can complicate subclassing and, for example, plugin
If you just want to "-except" a single sub, you can pass it directly.
For more than one value you have to use an array reference.
+ Explicitely removing functions when your scope is compiled
+ It is also possible to explicitely tell "namespace::clean" what packages
+ to remove when the surrounding scope has finished compiling. Here is an
+ example:
+
+ package Foo;
+ use strict;
+
+ # blessed NOT available
+
+ sub my_class {
+ use Scalar::Util qw( blessed );
+ use namespace::clean qw( blessed );
+
+ # blessed available
+ return blessed shift;
+ }
+
+ # blessed NOT available
+
Moose
When using "namespace::clean" together with Moose you want to keep the
installed "meta" method. So your classes should look like: