Provided by: libperl-critic-perl_1.156-1_all bug

NAME

       Perl::Critic::PolicyFactory - Instantiates Policy objects.

DESCRIPTION

       This is a helper class that instantiates Perl::Critic::Policy objects with the user's preferred
       parameters. There are no user-serviceable parts here.

INTERFACE SUPPORT

       This is considered to be a non-public class.  Its interface is subject to change without notice.

CONSTRUCTOR

       "new( -profile => $profile, -errors => $config_errors )"
           Returns a reference to a new Perl::Critic::PolicyFactory object.

           -profile is a reference to a Perl::Critic::UserProfile object.  This argument is required.

           -errors  is a reference to an instance of Perl::Critic::ConfigErrors.  This argument is optional.  If
           specified, than any problems found will be added to the object.

METHODS

       "create_policy( -name => $policy_name, -params => \%param_hash )"
           Creates one Policy object.  If the object cannot be instantiated, it will throw  a  fatal  exception.
           Otherwise, it returns a reference to the new Policy object.

           -name  is  the name of a Perl::Critic::Policy subclass module.  The 'Perl::Critic::Policy' portion of
           the name can be omitted for brevity.  This argument is required.

           -params is an optional reference to hash of parameters that will be passed into  the  constructor  of
           the  Policy.   If  "-params"  is  not defined, we will use the appropriate Policy parameters from the
           Perl::Critic::UserProfile.

           Note that the Policy will not have had "initialize_if_enabled" in Perl::Critic::Policy invoked on it,
           so it may not yet be usable.

        create_all_policies()
           Constructs and returns one instance of each Perl::Critic::Policy subclass that is  installed  on  the
           local  system.   Each  Policy  will  be  created  with  the  appropriate  parameters  from the user's
           configuration profile.

           Note that the Policies will not have had "initialize_if_enabled" in Perl::Critic::Policy  invoked  on
           them, so they may not yet be usable.

SUBROUTINES

       Perl::Critic::PolicyFactory  has  a few static subroutines that are used internally, but may be useful to
       you in some way.

       site_policy_names()
           Returns a list of all the Policy modules that are  currently  installed  in  the  Perl::Critic:Policy
           namespace.   These  will  include modules that are distributed with Perl::Critic plus any third-party
           modules that have been installed.

AUTHOR

       Jeffrey Ryan Thalhammer <jeff@imaginative-software.com>

COPYRIGHT

       Copyright (c) 2005-2011 Imaginative Software Systems

       This program is free software; you can redistribute it and/or modify it under  the  same  terms  as  Perl
       itself.  The full text of this license can be found in the LICENSE file included with this module.

perl v5.40.0                                       2024-10-28                   Perl::Critic::PolicyFactory(3pm)