| blib/lib/Parse/SAMGov/Mo.pm | |||
|---|---|---|---|
| Criterion | Covered | Total | % |
| statement | 129 | 199 | 64.8 |
| branch | 45 | 48 | 93.7 |
| condition | 6 | 16 | 37.5 |
| subroutine | 41 | 41 | 100.0 |
| pod | n/a | ||
| total | 221 | 304 | 72.7 |
| line | stmt | bran | cond | sub | pod | time | code |
|---|---|---|---|---|---|---|---|
| 1 | package Parse::SAMGov::Mo; | ||||||
| 2 | $Parse::SAMGov::Mo::VERSION = '0.202'; | ||||||
| 3 | #use Mo qw'build builder default import coerce is chain'; | ||||||
| 4 | # The following line of code was produced from the previous line by | ||||||
| 5 | # Mo::Inline version 0.40 | ||||||
| 6 | 6 | 100 | 50 | 6 | 42 | 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.'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->(@_)}}};*{$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->(@_)}}};my$i=\&import;*{$M.import}=sub{(@_==2 and not$_[1])?pop@_:@_==1?push@_,grep!/import/,@f:();goto&$i};*{$M.'coerce::e'}=sub{my($P,$e,$o)=@_;$o->{coerce}=sub{my($m,$n,%a)=@_;$a{coerce}or return$m;sub{$#_?$m->($_[0],$a{coerce}->($_[1])):$m->(@_)}};my$C=$e->{new}||*{$M.Object::new}{CODE};$e->{new}=sub{my$s=$C->(@_);$s->$_($s->{$_})for keys%$s;$s}};*{$M.'is::e'}=sub{my($P,$e,$o)=@_;$o->{is}=sub{my($m,$n,%a)=@_;$a{is}or return$m;sub{$#_&&$a{is}eq'ro'&&caller ne'Mo::coerce'?die$n.' is ro':$m->(@_)}}};*{$M.'chain::e'}=sub{my($P,$e,$o)=@_;$o->{chain}=sub{my($m,$n,%a)=@_;$a{chain}or return$m;sub{$#_?($m->(@_),return$_[0]):$m->(@_)}}};@f=qw[build builder default import coerce is chain];use strict;use warnings; | |
| 6 | 100 | 33 | 6 | 11 | |||
| 6 | 100 | 33 | 6 | 10282 | |||
| 6 | 100 | 50 | 6 | 54 | |||
| 6 | 100 | 33 | 6 | 11 | |||
| 6 | 100 | 33 | 6 | 175 | |||
| 6 | 100 | 6 | 30 | ||||
| 6 | 100 | 6 | 10 | ||||
| 6 | 100 | 6 | 549 | ||||
| 6 | 100 | 6 | 1109 | ||||
| 0 | 100 | 6 | 0 | ||||
| 0 | 100 | 6 | 0 | ||||
| 6 | 100 | 6 | 689 | ||||
| 0 | 100 | 6 | 0 | ||||
| 0 | 100 | 6 | 0 | ||||
| 6 | 50 | 6 | 696 | ||||
| 0 | 100 | 6 | 0 | ||||
| 0 | 100 | 6 | 0 | ||||
| 6 | 100 | 6 | 700 | ||||
| 0 | 100 | 6 | 0 | ||||
| 0 | 50 | 6 | 0 | ||||
| 6 | 50 | 5 | 572 | ||||
| 0 | 100 | 4 | 0 | ||||
| 0 | 100 | 4 | 0 | ||||
| 6 | 4 | 599 | |||||
| 0 | 4 | 0 | |||||
| 0 | 4 | 0 | |||||
| 6 | 4 | 866 | |||||
| 0 | 4 | 0 | |||||
| 0 | 4 | 0 | |||||
| 6 | 4 | 673 | |||||
| 0 | 4 | 0 | |||||
| 0 | 4 | 0 | |||||
| 6 | 4 | 667 | |||||
| 0 | 4 | 0 | |||||
| 0 | 4 | 0 | |||||
| 6 | 4 | 683 | |||||
| 0 | 4 | 0 | |||||
| 0 | 4 | 0 | |||||
| 6 | 4 | 679 | |||||
| 0 | 288 | 0 | |||||
| 0 | 0 | ||||||
| 6 | 733 | ||||||
| 0 | 0 | ||||||
| 0 | 0 | ||||||
| 6 | 643 | ||||||
| 1 | 3 | ||||||
| 1 | 14 | ||||||
| 6 | 707 | ||||||
| 0 | 0 | ||||||
| 0 | 0 | ||||||
| 6 | 663 | ||||||
| 0 | 0 | ||||||
| 0 | 0 | ||||||
| 6 | 726 | ||||||
| 0 | 0 | ||||||
| 0 | 0 | ||||||
| 6 | 669 | ||||||
| 0 | 0 | ||||||
| 0 | 0 | ||||||
| 6 | 607 | ||||||
| 0 | 0 | ||||||
| 0 | 0 | ||||||
| 5 | 142 | ||||||
| 4 | 8 | ||||||
| 4 | 56 | ||||||
| 4 | 551 | ||||||
| 0 | 0 | ||||||
| 0 | 0 | ||||||
| 4 | 381 | ||||||
| 0 | 0 | ||||||
| 0 | 0 | ||||||
| 4 | 362 | ||||||
| 0 | 0 | ||||||
| 0 | 0 | ||||||
| 4 | 360 | ||||||
| 0 | 0 | ||||||
| 0 | 0 | ||||||
| 4 | 337 | ||||||
| 0 | 0 | ||||||
| 0 | 0 | ||||||
| 4 | 299 | ||||||
| 0 | 0 | ||||||
| 0 | 0 | ||||||
| 4 | 408 | ||||||
| 0 | 0 | ||||||
| 0 | 0 | ||||||
| 4 | 318 | ||||||
| 0 | 0 | ||||||
| 0 | 0 | ||||||
| 4 | 341 | ||||||
| 0 | 0 | ||||||
| 0 | 0 | ||||||
| 4 | 336 | ||||||
| 0 | 0 | ||||||
| 0 | 0 | ||||||
| 4 | 314 | ||||||
| 0 | 0 | ||||||
| 0 | 0 | ||||||
| 4 | 308 | ||||||
| 0 | 0 | ||||||
| 0 | 0 | ||||||
| 4 | 419 | ||||||
| 0 | 0 | ||||||
| 0 | 0 | ||||||
| 4 | 381 | ||||||
| 0 | 0 | ||||||
| 0 | 0 | ||||||
| 4 | 334 | ||||||
| 0 | 0 | ||||||
| 0 | 0 | ||||||
| 4 | 460 | ||||||
| 0 | 0 | ||||||
| 0 | 0 | ||||||
| 4 | 313 | ||||||
| 0 | 0 | ||||||
| 0 | 0 | ||||||
| 4 | 359 | ||||||
| 0 | 0 | ||||||
| 0 | 0 | ||||||
| 288 | 5723 | ||||||
| 1491 | 1944300 | ||||||
| 209 | 340 | ||||||
| 265 | 704 | ||||||
| 160 | 302 | ||||||
| 817 | 4966 | ||||||
| 1542 | 43521 | ||||||
| 222 | 1552 | ||||||
| 227 | 6183 | ||||||
| 339 | 2771 | ||||||
| 339 | 1205 | ||||||
| 4388 | 2821311 | ||||||
| 181 | 556 | ||||||
| 181 | 1348 | ||||||
| 297 | 2147539 | ||||||
| 343 | 637 | ||||||
| 196 | 469 | ||||||
| 93 | 1278 | ||||||
| 152 | 777 | ||||||
| 176 | 1546 | ||||||
| 209 | 537 | ||||||
| 130 | 302 | ||||||
| 75 | 298 | ||||||
| 639 | 2886 | ||||||
| 51 | 86 | ||||||
| 88 | 293 | ||||||
| 1070 | 9098 | ||||||
| 224 | 1632 | ||||||
| 302 | 1736 | ||||||
| 361 | 1096 | ||||||
| 298 | 1057 | ||||||
| 293 | 826 | ||||||
| 194 | 1424 | ||||||
| 17 | 615 | ||||||
| 46 | 124 | ||||||
| 67 | 1497 | ||||||
| 154 | 836 | ||||||
| 232 | 451 | ||||||
| 123 | 262 | ||||||
| 95 | 445 | ||||||
| 205 | 584 | ||||||
| 170 | 645 | ||||||
| 204 | 944 | ||||||
| 175 | 793 | ||||||
| 139 | 982 | ||||||
| 412 | 1412 | ||||||
| 499 | 1111 | ||||||
| 232 | 1205 | ||||||
| 178 | 391 | ||||||
| 35 | 464 | ||||||
| 42 | 245 | ||||||
| 97 | 213 | ||||||
| 89 | 672 | ||||||
| 270 | 482 | ||||||
| 268 | 1532 | ||||||
| 144 | 273 | ||||||
| 144 | 673 | ||||||
| 152 | 342 | ||||||
| 33 | 99 | ||||||
| 156 | 846 | ||||||
| 115 | 182 | ||||||
| 98 | 724 | ||||||
| 224 | 979 | ||||||
| 286 | 702 | ||||||
| 93 | 336 | ||||||
| 65 | 518 | ||||||
| 152 | 345 | ||||||
| 152 | 559 | ||||||
| 82 | 262 | ||||||
| 75 | 583 | ||||||
| 75 | 705 | ||||||
| 25 | 442 | ||||||
| 95 | 685 | ||||||
| 225 | 755 | ||||||
| 229 | 977 | ||||||
| 85 | 388 | ||||||
| 85 | 487 | ||||||
| 18 | 111 | ||||||
| 94 | 664 | ||||||
| 7 | |||||||
| 8 | 1; | ||||||
| 9 | |||||||
| 10 | =pod | ||||||
| 11 | |||||||
| 12 | =encoding UTF-8 | ||||||
| 13 | |||||||
| 14 | =head1 NAME | ||||||
| 15 | |||||||
| 16 | Parse::SAMGov::Mo | ||||||
| 17 | |||||||
| 18 | =head1 VERSION | ||||||
| 19 | |||||||
| 20 | version 0.202 | ||||||
| 21 | |||||||
| 22 | =head1 AUTHOR | ||||||
| 23 | |||||||
| 24 | Vikas N Kumar <vikas@cpan.org> | ||||||
| 25 | |||||||
| 26 | =head1 COPYRIGHT AND LICENSE | ||||||
| 27 | |||||||
| 28 | This software is copyright (c) 2023 by Selective Intellect LLC. | ||||||
| 29 | |||||||
| 30 | This is free software; you can redistribute it and/or modify it under | ||||||
| 31 | the same terms as the Perl 5 programming language system itself. | ||||||
| 32 | |||||||
| 33 | =cut | ||||||
| 34 | |||||||
| 35 | __END__ | ||||||
| 36 | ### COPYRIGHT: Selective Intellect LLC. | ||||||
| 37 | ### AUTHOR: Vikas N Kumar <vikas@cpan.org> |