sourCEntral - mobile manpages

pdf

Perl::Critic::Policy::Moose::RequireMakeImmutable

NAME

Perl::Critic::Policy::Moose::RequireMakeImmutable - Ensure that you’ve made your Moose code fast

VERSION

version 1.05

DESCRIPTION

Moose is very flexible. That flexibility comes at a performance cost. You can ameliorate some of that cost by telling Moose when you are done putting your classes together.

Thus, if you "use Moose", this policy requires that you do "__PACKAGE__->meta()->make_immutable()".

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

then the following code would result in a violation:

package Baz;
use MyCompany::Moose;
sub new {
...
}
# no make_immutable call

SUPPORT

Bugs 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 AT rt DOT cpan DOT org <mailto:bug-perl-critic-moose AT rt DOT cpan DOT org>).

I am also usually active on IRC as ’drolsky’ on "irc://irc.perl.org".

AUTHORS

Elliot Shank <perl AT galumph DOT com>

Dave Rolsky <autarch AT urth DOT org>

COPYRIGHT AND LICENSE

This 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.

pdf