Scroll to navigation

Perl::Critic::PolicyParameter(3pm) User Contributed Perl Documentation 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-2011 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.

2023-01-15 perl v5.36.0