NAME
Perl::Critic::UserProfile - The contents of the user's profile, often .perlcriticrc.
DESCRIPTION
This is a helper class that encapsulates the contents of the user's profile, which is usually stored in a .perlcriticrc file. 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 => $p )
-
-profile is the path to the user's profile. If -profile is not defined, then it looks for the profile at ./.perlcriticrc and then $HOME/.perlcriticrc. If neither of those files exists, then the UserProfile is created with default values.
This object does not take into account any command-line overrides; Perl::Critic::Config does that.
METHODS
options_processor()
-
Returns the Perl::Critic::OptionsProcessor object for this UserProfile.
policy_is_disabled( $policy )
-
Given a reference to a Perl::Critic::Policy object or the name of one, returns true if the user has disabled that policy in their profile.
policy_is_enabled( $policy )
-
Given a reference to a Perl::Critic::Policy object or the name of one, returns true if the user has explicitly enabled that policy in their user profile.
policy_params( $policy )
-
Given a reference to a Perl::Critic::Policy object or the name of one, returns a Perl::Critic::PolicyConfig for the user's configuration parameters for that policy.
raw_policy_params( $policy )
-
Given a reference to a Perl::Critic::Policy object or the name of one, returns a reference to a hash of the user's configuration parameters for that policy.
listed_policies()
-
Returns a list of the names of all the Policies that are mentioned in the profile. The Policy names will be fully qualified (e.g. Perl::Critic::Foo).
source()
-
The place where the profile information came from, if available. Usually the path to a .perlcriticrc.
SEE ALSO
Perl::Critic::Config, Perl::Critic::OptionsProcessor
AUTHOR
Jeffrey Ryan Thalhammer <jeff@imaginative-software.com>
COPYRIGHT
Copyright (c) 2005-2023 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.