Dave Rolsky > Perl-Critic-Moose > Perl::Critic::Policy::Moose::ProhibitNewMethod

Download:
Perl-Critic-Moose-1.03.tar.gz

Dependencies

Annotate this POD

Website

CPAN RT

New  2
Open  0
View/Report Bugs
Module Version: 1.03   Source  

NAME ^

Perl::Critic::Policy::Moose::ProhibitNewMethod - Don't override Moose's standard constructors.

VERSION ^

version 1.03

DESCRIPTION ^

Overriding new() on a Moose class causes a number of problems, including speed issues and problems with order of invocation of constructors when multiple inheritance is involved. Use BUILDARGS() and BUILD() instead.

AFFILIATION ^

This policy is part of Perl::Critic::Moose.

CONFIGURATION ^

There 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::ProhibitNewMethod]
    equivalent_modules = MyCompany::Moose MooseX::NewThing

then the following code would result in a violation:

    package Baz;

    use MyCompany::Moose;

    sub new {
        ...
    }

SEE ALSO ^

AUTHORS ^

COPYRIGHT AND LICENSE ^

This software is copyright (c) 2008 - 2015 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.

syntax highlighting: