File Coverage

blib/lib/Perl/Critic/Exception/Configuration/Option/Policy/ExtraParameter.pm
Criterion Covered Total %
statement 21 22 95.4
branch 1 2 50.0
condition n/a
subroutine 6 6 100.0
pod 1 1 100.0
total 29 31 93.5


line stmt bran cond sub pod time code
1             package Perl::Critic::Exception::Configuration::Option::Policy::ExtraParameter;
2              
3 40     40   726 use 5.010001;
  40         152  
4 40     40   229 use strict;
  40         92  
  40         816  
5 40     40   208 use warnings;
  40         90  
  40         1160  
6              
7 40     40   271 use Readonly;
  40         95  
  40         3317  
8              
9             our $VERSION = '1.146';
10              
11             #-----------------------------------------------------------------------------
12              
13             use Exception::Class (
14 40         427 'Perl::Critic::Exception::Configuration::Option::Policy::ExtraParameter' => {
15             isa => 'Perl::Critic::Exception::Configuration::Option::Policy',
16             description => 'The configuration of a policy referred to a non-existant parameter.',
17             alias => 'throw_extra_parameter',
18             },
19 40     40   339 );
  40         112  
20              
21             #-----------------------------------------------------------------------------
22              
23             Readonly::Array our @EXPORT_OK => qw< throw_extra_parameter >;
24              
25             #-----------------------------------------------------------------------------
26              
27             sub full_message {
28 145     145 1 1587 my ( $self ) = @_;
29              
30 145         2631 my $source = $self->source();
31 145 50       812 if ($source) {
32 0         0 $source = qq{ (found in "$source")};
33             }
34             else {
35 145         353 $source = q{};
36             }
37              
38 145         2451 my $policy = $self->policy();
39 145         2843 my $option_name = $self->option_name();
40              
41             return
42 145         967 qq{The $policy policy doesn't take a "$option_name" option$source.};
43             }
44              
45              
46             1;
47              
48             __END__
49              
50             #-----------------------------------------------------------------------------
51              
52             =pod
53              
54             =for stopwords
55              
56             =head1 NAME
57              
58             Perl::Critic::Exception::Configuration::Option::Policy::ExtraParameter - The configuration referred to a non-existent parameter for a policy.
59              
60             =head1 DESCRIPTION
61              
62             A representation of the configuration attempting to specify a value
63             for a parameter that a L<Perl::Critic::Policy|Perl::Critic::Policy>
64             doesn't have, whether from a F<.perlcriticrc>, another profile file,
65             or command line.
66              
67              
68             =head1 INTERFACE SUPPORT
69              
70             This is considered to be a public class. Any changes to its interface
71             will go through a deprecation cycle.
72              
73              
74             =head1 CLASS METHODS
75              
76             =over
77              
78             =item C<< throw( policy => $policy, option_name => $option_name, source => $source ) >>
79              
80             See L<Exception::Class/"throw">.
81              
82              
83             =item C<< new( policy => $policy, option_name => $option_name, source => $source ) >>
84              
85             See L<Exception::Class/"new">.
86              
87              
88             =back
89              
90              
91             =head1 METHODS
92              
93             =over
94              
95             =item C<full_message()>
96              
97             Provide a standard message for values for non-existent parameters for
98             policies. See L<Exception::Class/"full_message">.
99              
100              
101             =back
102              
103              
104             =head1 AUTHOR
105              
106             Elliot Shank <perl@galumph.com>
107              
108             =head1 COPYRIGHT
109              
110             Copyright (c) 2007-2011 Elliot Shank.
111              
112             This program is free software; you can redistribute it and/or modify
113             it under the same terms as Perl itself. The full text of this license
114             can be found in the LICENSE file included with this module.
115              
116             =cut
117              
118             # Local Variables:
119             # mode: cperl
120             # cperl-indent-level: 4
121             # fill-column: 78
122             # indent-tabs-mode: nil
123             # c-indentation-style: bsd
124             # End:
125             # ex: set ts=8 sts=4 sw=4 tw=78 ft=perl expandtab shiftround :