Perl::Critic::UserProfile(3pm)

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.