blib/lib/Pegex/Base.pm | |||
---|---|---|---|
Criterion | Covered | Total | % |
statement | 217 | 365 | 59.4 |
branch | 40 | 40 | 100.0 |
condition | 10 | 15 | 66.6 |
subroutine | 95 | 95 | 100.0 |
pod | n/a | ||
total | 362 | 515 | 70.2 |
line | stmt | bran | cond | sub | pod | time | code |
---|---|---|---|---|---|---|---|
1 | package Pegex::Base; | ||||||
2 | # use Mo qw'build default builder xxx import nonlazy required'; | ||||||
3 | # The following line of code was produced from the previous line by | ||||||
4 | # Mo::Inline version 0.40 | ||||||
5 | 11 | 100 | 66 | 11 | 56295 | no warnings;my$M=__PACKAGE__.'::';*{$M.Object::new}=sub{my$c=shift;my$s=bless{@_},$c;my%n=%{$c.'::'.':E'};map{$s->{$_}=$n{$_}->()if!exists$s->{$_}}keys%n;$s};*{$M.import}=sub{import warnings;$^H|=1538;my($P,%e,%o)=caller.'::';shift;eval"no Mo::$_",&{$M.$_.::e}($P,\%e,\%o,\@_)for@_;return if$e{M};%e=(extends,sub{eval"no $_[0]()";@{$P.ISA}=$_[0]},has,sub{my$n=shift;my$m=sub{$#_?$_[0]{$n}=$_[1]:$_[0]{$n}};@_=(default,@_)if!($#_%2);$m=$o{$_}->($m,$n,@_)for sort keys%o;*{$P.$n}=$m},%e,);*{$P.$_}=$e{$_}for keys%e;@{$P.ISA}=$M.Object};*{$M.'build::e'}=sub{my($P,$e)=@_;$e->{new}=sub{$c=shift;my$s=&{$M.Object::new}($c,@_);my@B;do{@B=($c.::BUILD,@B)}while($c)=@{$c.::ISA};exists&$_&&&$_($s)for@B;$s}};*{$M.'default::e'}=sub{my($P,$e,$o)=@_;$o->{default}=sub{my($m,$n,%a)=@_;exists$a{default}or return$m;my($d,$r)=$a{default};my$g='HASH'eq($r=ref$d)?sub{+{%$d}}:'ARRAY'eq$r?sub{[@$d]}:'CODE'eq$r?$d:sub{$d};my$i=exists$a{lazy}?$a{lazy}:!${$P.':N'};$i or ${$P.':E'}{$n}=$g and return$m;sub{$#_?$m->(@_):!exists$_[0]{$n}?$_[0]{$n}=$g->(@_):$m->(@_)}}};*{$M.'builder::e'}=sub{my($P,$e,$o)=@_;$o->{builder}=sub{my($m,$n,%a)=@_;my$b=$a{builder}or return$m;my$i=exists$a{lazy}?$a{lazy}:!${$P.':N'};$i or ${$P.':E'}{$n}=\&{$P.$b}and return$m;sub{$#_?$m->(@_):!exists$_[0]{$n}?$_[0]{$n}=$_[0]->$b:$m->(@_)}}};use constant XXX_skip=>1;*{$M.'xxx::e'}=sub{my($P,$e)=@_;$e->{WWW}=sub{require XXX;XXX::WWW(@_)};$e->{XXX}=sub{require XXX;XXX::XXX(@_)};$e->{YYY}=sub{require XXX;XXX::YYY(@_)};$e->{ZZZ}=sub{require XXX;XXX::ZZZ(@_)}};my$i=\&import;*{$M.import}=sub{(@_==2 and not$_[1])?pop@_:@_==1?push@_,grep!/import/,@f:();goto&$i};*{$M.'nonlazy::e'}=sub{${shift().':N'}=1};*{$M.'required::e'}=sub{my($P,$e,$o)=@_;$o->{required}=sub{my($m,$n,%a)=@_;if($a{required}){my$C=*{$P."new"}{CODE}||*{$M.Object::new}{CODE};no warnings 'redefine';*{$P."new"}=sub{my$s=$C->(@_);my%a=@_[1..$#_];die$n." required"if!exists$a{$n};$s}}$m}};@f=qw[build default builder xxx import nonlazy required];use strict;use warnings; | |
11 | 100 | 66 | 11 | 27 | |||
11 | 100 | 66 | 11 | 8958 | |||
11 | 100 | 66 | 11 | 75 | |||
11 | 100 | 66 | 11 | 18 | |||
11 | 100 | 11 | 4010 | ||||
11 | 100 | 11 | 68 | ||||
11 | 100 | 11 | 22 | ||||
11 | 100 | 11 | 1366 | ||||
11 | 100 | 11 | 67 | ||||
11 | 100 | 11 | 14 | ||||
11 | 100 | 11 | 237 | ||||
11 | 100 | 11 | 65 | ||||
11 | 100 | 11 | 17 | ||||
11 | 100 | 11 | 412 | ||||
11 | 100 | 11 | 1855 | ||||
0 | 100 | 11 | 0 | ||||
0 | 100 | 11 | 0 | ||||
11 | 100 | 11 | 1242 | ||||
0 | 100 | 11 | 0 | ||||
0 | 11 | 0 | |||||
11 | 11 | 1220 | |||||
0 | 11 | 0 | |||||
0 | 11 | 0 | |||||
11 | 11 | 1246 | |||||
0 | 11 | 0 | |||||
0 | 11 | 0 | |||||
11 | 11 | 1235 | |||||
0 | 11 | 0 | |||||
0 | 11 | 0 | |||||
11 | 11 | 1214 | |||||
0 | 11 | 0 | |||||
0 | 11 | 0 | |||||
11 | 11 | 1494 | |||||
1 | 11 | 3 | |||||
1 | 10 | 9 | |||||
11 | 10 | 1290 | |||||
0 | 10 | 0 | |||||
0 | 10 | 0 | |||||
11 | 10 | 1230 | |||||
0 | 10 | 0 | |||||
0 | 10 | 0 | |||||
11 | 10 | 1309 | |||||
0 | 10 | 0 | |||||
0 | 10 | 0 | |||||
11 | 10 | 1206 | |||||
0 | 10 | 0 | |||||
0 | 10 | 0 | |||||
11 | 10 | 1233 | |||||
0 | 10 | 0 | |||||
0 | 10 | 0 | |||||
11 | 10 | 1295 | |||||
0 | 10 | 0 | |||||
0 | 10 | 0 | |||||
11 | 10 | 1223 | |||||
0 | 10 | 0 | |||||
0 | 10 | 0 | |||||
11 | 10 | 1251 | |||||
0 | 10 | 0 | |||||
0 | 10 | 0 | |||||
11 | 10 | 1217 | |||||
0 | 10 | 0 | |||||
0 | 10 | 0 | |||||
11 | 10 | 1259 | |||||
0 | 10 | 0 | |||||
0 | 10 | 0 | |||||
11 | 10 | 1228 | |||||
0 | 10 | 0 | |||||
0 | 7 | 0 | |||||
11 | 7 | 1401 | |||||
0 | 7 | 0 | |||||
0 | 7 | 0 | |||||
11 | 7 | 1256 | |||||
0 | 7 | 0 | |||||
0 | 7 | 0 | |||||
11 | 1 | 1278 | |||||
0 | 1 | 0 | |||||
0 | 1 | 0 | |||||
11 | 1 | 1233 | |||||
0 | 1 | 0 | |||||
0 | 1 | 0 | |||||
11 | 1 | 1231 | |||||
0 | 1 | 0 | |||||
0 | 1 | 0 | |||||
11 | 1 | 1258 | |||||
0 | 1 | 0 | |||||
0 | 1 | 0 | |||||
11 | 1 | 1292 | |||||
0 | 1 | 0 | |||||
0 | 1 | 0 | |||||
11 | 1 | 1270 | |||||
0 | 1 | 0 | |||||
0 | 1 | 0 | |||||
11 | 1 | 1246 | |||||
0 | 1047 | 0 | |||||
0 | 0 | ||||||
11 | 1258 | ||||||
0 | 0 | ||||||
0 | 0 | ||||||
11 | 1267 | ||||||
0 | 0 | ||||||
0 | 0 | ||||||
11 | 1239 | ||||||
0 | 0 | ||||||
0 | 0 | ||||||
10 | 2358 | ||||||
6 | 13 | ||||||
6 | 50 | ||||||
10 | 1198 | ||||||
0 | 0 | ||||||
0 | 0 | ||||||
10 | 1125 | ||||||
0 | 0 | ||||||
0 | 0 | ||||||
10 | 1120 | ||||||
0 | 0 | ||||||
0 | 0 | ||||||
10 | 1128 | ||||||
0 | 0 | ||||||
0 | 0 | ||||||
10 | 1128 | ||||||
0 | 0 | ||||||
0 | 0 | ||||||
10 | 1311 | ||||||
1 | 3 | ||||||
1 | 10 | ||||||
10 | 1156 | ||||||
0 | 0 | ||||||
0 | 0 | ||||||
10 | 1118 | ||||||
0 | 0 | ||||||
0 | 0 | ||||||
10 | 1154 | ||||||
0 | 0 | ||||||
0 | 0 | ||||||
10 | 1217 | ||||||
0 | 0 | ||||||
0 | 0 | ||||||
10 | 1146 | ||||||
0 | 0 | ||||||
0 | 0 | ||||||
10 | 884 | ||||||
2 | 3 | ||||||
2 | 18 | ||||||
10 | 1098 | ||||||
1 | 2 | ||||||
1 | 8 | ||||||
10 | 1126 | ||||||
0 | 0 | ||||||
0 | 0 | ||||||
10 | 1150 | ||||||
0 | 0 | ||||||
0 | 0 | ||||||
10 | 1144 | ||||||
0 | 0 | ||||||
0 | 0 | ||||||
10 | 1107 | ||||||
0 | 0 | ||||||
0 | 0 | ||||||
10 | 1108 | ||||||
0 | 0 | ||||||
0 | 0 | ||||||
10 | 531 | ||||||
6 | 11 | ||||||
6 | 53 | ||||||
10 | 1228 | ||||||
0 | 0 | ||||||
0 | 0 | ||||||
10 | 1160 | ||||||
0 | 0 | ||||||
0 | 0 | ||||||
10 | 1130 | ||||||
0 | 0 | ||||||
0 | 0 | ||||||
10 | 1187 | ||||||
0 | 0 | ||||||
0 | 0 | ||||||
10 | 1137 | ||||||
0 | 0 | ||||||
0 | 0 | ||||||
10 | 1530 | ||||||
2 | 4 | ||||||
2 | 17 | ||||||
10 | 1339 | ||||||
1 | 2 | ||||||
1 | 10 | ||||||
10 | 1132 | ||||||
0 | 0 | ||||||
0 | 0 | ||||||
10 | 1141 | ||||||
0 | 0 | ||||||
0 | 0 | ||||||
10 | 1136 | ||||||
0 | 0 | ||||||
0 | 0 | ||||||
10 | 1112 | ||||||
0 | 0 | ||||||
0 | 0 | ||||||
10 | 1170 | ||||||
0 | 0 | ||||||
0 | 0 | ||||||
10 | 1901 | ||||||
8 | 19 | ||||||
8 | 63 | ||||||
7 | 1010 | ||||||
1 | 3 | ||||||
1 | 8 | ||||||
7 | 802 | ||||||
0 | 0 | ||||||
0 | 0 | ||||||
7 | 770 | ||||||
0 | 0 | ||||||
0 | 0 | ||||||
7 | 777 | ||||||
0 | 0 | ||||||
0 | 0 | ||||||
7 | 681 | ||||||
1 | 1 | ||||||
1 | 10 | ||||||
7 | 1035 | ||||||
1 | 3 | ||||||
1 | 9 | ||||||
7 | 259 | ||||||
5 | 7 | ||||||
5 | 43 | ||||||
1 | 108 | ||||||
0 | 0 | ||||||
0 | 0 | ||||||
1 | 119 | ||||||
0 | 0 | ||||||
0 | 0 | ||||||
1 | 106 | ||||||
0 | 0 | ||||||
0 | 0 | ||||||
1 | 105 | ||||||
0 | 0 | ||||||
0 | 0 | ||||||
1 | 115 | ||||||
0 | 0 | ||||||
0 | 0 | ||||||
1 | 112 | ||||||
0 | 0 | ||||||
0 | 0 | ||||||
1 | 111 | ||||||
0 | 0 | ||||||
0 | 0 | ||||||
1 | 103 | ||||||
0 | 0 | ||||||
0 | 0 | ||||||
1 | 106 | ||||||
0 | 0 | ||||||
0 | 0 | ||||||
1 | 105 | ||||||
0 | 0 | ||||||
0 | 0 | ||||||
1 | 110 | ||||||
0 | 0 | ||||||
0 | 0 | ||||||
1 | 6 | ||||||
1 | 2 | ||||||
1 | 10 | ||||||
1 | 112 | ||||||
0 | 0 | ||||||
0 | 0 | ||||||
1 | 106 | ||||||
0 | 0 | ||||||
0 | 0 | ||||||
1 | 107 | ||||||
0 | 0 | ||||||
0 | 0 | ||||||
1 | 108 | ||||||
0 | 0 | ||||||
0 | 0 | ||||||
1 | 105 | ||||||
0 | 0 | ||||||
0 | 0 | ||||||
1 | 109 | ||||||
0 | 0 | ||||||
0 | 0 | ||||||
1 | 6 | ||||||
1 | 2 | ||||||
1 | 8 | ||||||
1047 | 3799 | ||||||
120 | 233 | ||||||
74 | 159 | ||||||
127 | 548 | ||||||
137 | 361 | ||||||
157 | 398 | ||||||
1805 | 6660 | ||||||
91 | 573 | ||||||
119 | 263 | ||||||
1510 | 6627 | ||||||
111 | 997 | ||||||
625 | 2732 | ||||||
149 | 400 | ||||||
635 | 2268 | ||||||
106 | 702 | ||||||
134 | 341 | ||||||
148 | 278 | ||||||
150 | 820 | ||||||
123 | 233 | ||||||
110 | 355 | ||||||
108 | 627 | ||||||
144 | 408 | ||||||
94 | 350 | ||||||
122 | 964 | ||||||
120 | 1471 | ||||||
173 | 1061 | ||||||
211 | 592 | ||||||
137 | 41363 | ||||||
180 | 1087 | ||||||
183 | 589 | ||||||
157 | 444 | ||||||
133 | 351 | ||||||
105 | 377 | ||||||
100 | 350 | ||||||
121 | 421 | ||||||
97 | 696 | ||||||
146 | 732 | ||||||
211 | 437 | ||||||
180 | 351 | ||||||
159 | 431 | ||||||
75 | 284 | ||||||
90 | 231 | ||||||
100 | 197 | ||||||
101 | 916 | ||||||
104 | 1640 | ||||||
89 | 1006 | ||||||
78 | 182 | ||||||
138 | 918 | ||||||
88 | 780 | ||||||
100 | 214 | ||||||
122 | 774 | ||||||
115 | 251 | ||||||
136 | 861 | ||||||
125 | 260 | ||||||
100 | 1278 | ||||||
143 | 345 | ||||||
170 | 979 | ||||||
129 | 382 | ||||||
93 | 257 | ||||||
80 | 273 | ||||||
75 | 163 | ||||||
102 | 1115 | ||||||
148 | 385 | ||||||
101 | 940 | ||||||
152 | 1343 | ||||||
160 | 408 | ||||||
155 | 1287 | ||||||
155 | 959 | ||||||
102 | 249 | ||||||
165 | 1638 | ||||||
200 | 400 | ||||||
225 | 1836 | ||||||
128 | 233 | ||||||
130 | 2940 | ||||||
81 | 249 | ||||||
102 | 1232 | ||||||
85 | 174 | ||||||
117 | 866 | ||||||
115 | 1541 | ||||||
118 | 380 | ||||||
115 | 1573 | ||||||
103 | 293 | ||||||
102 | 2918 | ||||||
6 | |||||||
7 | 1; |