Provided by: libperl-critic-perl_1.121-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.  All rights reserved.

       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.