File Coverage

blib/lib/Parse/PlainConfig/Settings.pm
Criterion Covered Total %
statement 48 48 100.0
branch n/a
condition n/a
subroutine 20 20 100.0
pod 11 11 100.0
total 79 79 100.0


line stmt bran cond sub pod time code
1             # Parse::PlainConfig::Settings -- Settings Class
2             #
3             # (c) 2016, Arthur Corliss
4             #
5             # $Id: lib/Parse/PlainConfig/Settings.pm, 3.07 2024/01/10 13:32:06 acorliss Exp $
6             #
7             # This software is licensed under the same terms as Perl, itself.
8             # Please see http://dev.perl.org/licenses/ for more information.
9             #
10             #####################################################################
11              
12             #####################################################################
13             #
14             # Environment definitions
15             #
16             #####################################################################
17              
18             package Parse::PlainConfig::Settings;
19              
20 11     11   174 use 5.008;
  11         38  
21              
22 11     11   51 use strict;
  11         18  
  11         336  
23 11     11   60 use warnings;
  11         29  
  11         518  
24 11     11   56 use vars qw($VERSION);
  11         16  
  11         1074  
25              
26             ($VERSION) = ( q$Revision: 3.07 $ =~ /(\d+(?:\.\d+)+)/sm );
27              
28 11     11   82 use Paranoid;
  11         28  
  11         660  
29 11     11   61 use Paranoid::Debug;
  11         23  
  11         999  
30 11     11   57 use Parse::PlainConfig::Constants qw(:all);
  11         20  
  11         1805  
31 11     11   65 use Class::EHierarchy qw(:all);
  11         24  
  11         1474  
32 11     11   90 use vars qw(@ISA @_properties @_methods);
  11         20  
  11         4915  
33              
34             @ISA = qw(Class::EHierarchy);
35              
36             @_properties = (
37             [ CEH_PUB | CEH_SCALAR, 'tab stop', DEFAULT_TAB ],
38             [ CEH_PUB | CEH_SCALAR, 'subindentation', DEFAULT_SUBI ],
39             [ CEH_PUB | CEH_SCALAR, 'comment', DEFAULT_CMMT ],
40             [ CEH_PUB | CEH_SCALAR, 'delimiter', DEFAULT_PDLM ],
41             [ CEH_PUB | CEH_SCALAR, 'list delimiter', DEFAULT_LDLM ],
42             [ CEH_PUB | CEH_SCALAR, 'hash delimiter', DEFAULT_HDLM ],
43             [ CEH_PUB | CEH_SCALAR, 'here doc', DEFAULT_HDOC ],
44             [ CEH_PUB | CEH_HASH, 'property types' ],
45             [ CEH_PUB | CEH_HASH, 'property regexes' ],
46             [ CEH_PUB | CEH_HASH, 'prototypes' ],
47             [ CEH_PUB | CEH_HASH, 'prototype regexes' ],
48             [ CEH_PUB | CEH_HASH, 'prototype registry' ],
49             [ CEH_PUB | CEH_SCALAR, 'error' ],
50             [ CEH_PUB | CEH_ARRAY, '_ppcClasses' ],
51             );
52              
53             #####################################################################
54             #
55             # Module code follows
56             #
57             #####################################################################
58              
59             sub tabStop {
60 29     29 1 65 my $obj = shift;
61 29         102 return $obj->get('tab stop');
62             }
63              
64             sub subindentation {
65 138     138 1 242 my $obj = shift;
66 138         305 return $obj->get('subindentation');
67             }
68              
69             sub comment {
70 31     31 1 67 my $obj = shift;
71 31         122 return $obj->get('comment');
72             }
73              
74             sub delimiter {
75 105     105 1 231 my $obj = shift;
76 105         428 return $obj->get('delimiter');
77             }
78              
79             sub listDelimiter {
80 127     127 1 244 my $obj = shift;
81 127         300 return $obj->get('list delimiter');
82             }
83              
84             sub hashDelimiter {
85 127     127 1 212 my $obj = shift;
86 127         273 return $obj->get('hash delimiter');
87             }
88              
89             sub hereDoc {
90 72     72 1 130 my $obj = shift;
91 72         212 return $obj->get('here doc');
92             }
93              
94             sub propertyTypes {
95 289     289 1 1272 my $obj = shift;
96 289         718 return $obj->get('property types');
97             }
98              
99             sub propertyRegexes {
100 138     138 1 244 my $obj = shift;
101 138         392 return $obj->get('property regexes');
102             }
103              
104             sub prototypes {
105 138     138 1 248 my $obj = shift;
106 138         320 return $obj->get('prototypes');
107             }
108              
109             sub prototypeRegexes {
110 138     138 1 239 my $obj = shift;
111 138         342 return $obj->get('prototype regexes');
112             }
113              
114             1;
115              
116             __END__