-
-
26 Jul 2005 21:11:43 UTC
- Distribution: Acme-use-strict-with-pride
- Module version: 0.04
- Source (raw)
- Browse (raw)
- Changes
- How to Contribute
- Issues (1)
- Testers (48 / 404 / 0)
- Kwalitee
Bus factor: 1- 94.12% Coverage
- License: unknown
- Activity
24 month- Tools
- Download (4.16KB)
- MetaCPAN Explorer
- Permissions
- Subscribe to distribution
- Permalinks
- This version
- Latest version
- Dependencies
- Test::More
- and possibly others
- Reverse dependencies
- CPAN Testers List
- Dependency graph
NAME
Acme::use::strict::with::pride - enforce bondage and discipline on very naughty modules.
SYNOPSIS
use Acme::use::strict::with::pride; # now all your naughty modules get to use strict; and use warnings;
ABSTRACT
using Acme::use::strict::with::pride causes all modules to run with
use strict;
anduse warnings;
Whether they like it or not :-)
DESCRIPTION
Acme::use::strict::with::pride installs a code reference into
@INC
that intercepts all futureuse
andrequire
requests. (code references in@INC
were in 5.6.x, but were not documented until 5.8.0, which extends the feature to allow objects in@INC
).The subroutine in
@INC
then finds the module using the normal@INC
path, opens the file, and attaches a source filter that adds "use strict; use warnings;" to the start of every file. This is naughty - it's not a documented feature, it may be changed or removed with no notice, and the current implementation is slightly buggy in subtle cases.EXPORT
Nothing. There's no unimport method, so using strict with pride is a one way trip. This could be construed as a bug or a feature, depending on your point of view.
SEE ALSO
BUGS
There's no unimport. There's no way to specify an import list to
use strict;
oruse warnings;
. There's no way to exclude specific modules (egExporter
) from the clutchesAcme::use::strict:with::pride
. The error and warning handling is global, rather than being chained, and it won't play nicely with error objects. The source filter in coderef@INC
is undocumented, so I shouldn't be using it.AUTHOR
Nicholas Clark, <nick@talking.bollo.cx>
COPYRIGHT AND LICENSE
Copyright 2002,2003 by Nicholas Clark
This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
Module Install Instructions
To install Acme::use::strict::with::pride, copy and paste the appropriate command in to your terminal.
cpanm Acme::use::strict::with::pride
perl -MCPAN -e shell install Acme::use::strict::with::pride
For more information on module installation, please visit the detailed CPAN module installation guide.