|
NAMEPerl::Critic::Policy::Moose::ProhibitMultipleWiths - Require role compositionVERSIONversion 1.05DESCRIPTIONMoose::Roles are, among other things, the answer to name conflicts plaguing multiple inheritance and mix-ins. However, to enjoy this protection, you must compose your roles together. Roles do not generate conflicts if they are consumed individually.Pass all of your roles to a single with statement. # ok package Foo; use Moose::Role; with qw< Bar Baz >; # not ok package Foo; use Moose::Role; with 'Bar'; with 'Baz'; AFFILIATIONThis policy is part of Perl::Critic::Moose.CONFIGURATIONThere is a single option, "equivalent_modules". This allows you to specify modules that should be treated the same as Moose and Moose::Role, if, say, you were doing something with Moose::Exporter. For example, if you were to have this in your .perlcriticrc file:[Moose::ProhibitMultipleWiths] equivalent_modules = MyCompany::Moose MooseX::NewThing then the following code would result in a violation: package Baz; use MyCompany::Moose; with 'Bing'; with 'Bong'; SUPPORTBugs may be submitted through the RT bug tracker <http://rt.cpan.org/Public/Dist/Display.html?Name=Perl-Critic-Moose> (or bug-perl-critic-moose@rt.cpan.org <mailto:bug-perl-critic-moose@rt.cpan.org>).I am also usually active on IRC as 'drolsky' on "irc://irc.perl.org". AUTHORS
COPYRIGHT AND LICENSEThis software is copyright (c) 2008 - 2016 by Elliot Shank.This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.
Visit the GSP FreeBSD Man Page Interface. |