Perl::Critic::PolicyParameter(3pm)

NAME
Perl::Critic::PolicyParameter - Metadata about a parameter for a Policy.

DESCRIPTION
A provider of validation and parsing of parameter values and metadata about the parameter.

INTERFACE SUPPORT
This is considered to be a public class. Any changes to its interface will go through a deprecation cycle.

METHODS

get_name()
    Return the name of the parameter. This is the key that will be looked for in the .perlcriticrc.

get_description()
    Return an explanation of the significance of the parameter, as provided by the developer of the policy.

get_default_string()
    Return a representation of the default value of this parameter as it would appear if it was specified in a .perlcriticrc file.

"parse_and_validate_config_value( $parser, $config )"
    Extract the configuration value for this parameter from the overall configuration and initialize the policy based upon it.

generate_full_description()
    Produce a more complete explanation of the significance of this parameter than the value returned by get_description().

    If no description can be derived, returns the empty string.

    Note that the result may contain multiple lines.

to_formatted_string( $format )
    Generate a string representation of this parameter, based upon the format.

    The format is a combination of literal and escape characters similar to the way "sprintf" works. If you want to know the specific formatting capabilities, look at String::Format. Valid escape characters are:

    %n  The name of the parameter.

    %d  The description, as supplied by the programmer.

    %D  The default value, in a parsable form.

    %f  The full description, which is an extension of the value returned by %d. Takes a parameter of a prefix for the beginning of each line.

SEE ALSO
"MAKING YOUR POLICY CONFIGURABLE" in Perl::Critic::DEVELOPER

AUTHOR
Elliot Shank <perl@galumph.com>

COPYRIGHT
Copyright (c) 2006-2023 Elliot Shank.

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.