X-Git-Url: http://git.vpit.fr/?p=perl%2Fmodules%2FPerl-Critic-Policy-Dynamic-NoIndirect.git;a=blobdiff_plain;f=README;h=660ea7c10178e54f89e208c3f1ceed22a2fdc73d;hp=407fdb83d1d7392c90166e453d3c81d6ee70ca04;hb=HEAD;hpb=29bf4ad76efaca85650166c8b34a05bd755b1d2b diff --git a/README b/README index 407fdb8..660ea7c 100644 --- a/README +++ b/README @@ -3,7 +3,7 @@ NAME indirect method calls. VERSION - Version 0.02 + Version 0.06 DESCRIPTION This Perl::Critic dynamic policy reports any use of indirect object @@ -13,12 +13,35 @@ DESCRIPTION Since it wraps around indirect, it needs to compile the audited code and as such is implemented as a subclass of Perl::Critic::DynamicPolicy. +CAVEATS + The uses of the indirect pragma inside the audited code take precedence + over this policy. Hence no violations will be reported for indirect + method calls that are located inside the lexical scope of "use indirect" + or "no indirect hook => ...". Occurrences of "no indirect" won't be a + problem. + + Since the reports generated by indirect are remapped to the + corresponding PPI::Element objects, the order in which the violations + are returned is different from the order given by indirect : the former + is the document order (top to bottom, left to right) while the latter is + the optree order (arguments before function calls). + DEPENDENCIES perl 5.8, Carp. Perl::Critic, Perl::Critic::Dynamic. - indirect. + indirect 0.20. + +SEE ALSO + Perl::Critic::Policy::Objects::ProhibitIndirectSyntax is a Perl::Critic + policy that statically checks for indirect constructs. But to be static + it has to be very restricted : you have to manually specify which + subroutine names are methods for which the indirect form should be + forbidden. This can lead to false positives (a subroutine with the name + you gave is defined in the current scope) and negatives (indirect + constructs for methods you didn't specify). But you don't need to + actually compile (or run, as it's more or less the same thing) the code. AUTHOR Vincent Pit, "", . @@ -36,10 +59,10 @@ BUGS SUPPORT You can find documentation for this module with the perldoc command. - perldoc Perl::Critic::Policy::Dynamic::NoIndirect + perldoc Perl::Critic::Policy::Dynamic::NoIndirect COPYRIGHT & LICENSE - Copyright 2009 Vincent Pit, all rights reserved. + Copyright 2009,2010,2011 Vincent Pit, all rights reserved. This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.