Branch Coverage

blib/lib/Lisp/Reader.pm
Criterion Covered Total %
branch 80 108 74.0


line true false branch
18 116 435 $Lisp::Reader::SYMBOLS_AS_STRINGS ? :
9 551 $_[0] eq 'nil' && !$Lisp::Reader::NIL_AS_SYMBOL ? :
33 0 155 if ($Lisp::Reader::DEBUG)
35 0 0 if $one
40 13 1994 if (/\G\s*;+([^\n]*)/cg) { }
912 1082 elsif (/\G\s*([()\[\]])/cg) { }
275 807 elsif (/\G\s*( [-+]? # optional sign (?:\d+(\.\d*)? # 0 0. 0.0 | \.\d+) # .0 ([eE][-+]?\d+)? # optional exponent ) (?![^\s()\[\];]) # not followed by plain chars /cgx) { }
13 794 elsif (/\G\s*\?((?:\\[A-Z]-)*(?:\\\^.|\\[0-7]{1,3}|\\.|.))/cgs) { }
69 725 elsif (/\G\s* \"( # start quote [^\"\\]* # unescaped (?:\\.[^\"\\]*)* # (escaped char + unescaped)* )\"/cgsx) { }
12 713 elsif (/\G\s*\'/cg) { }
22 691 elsif (/\G\s*\./cg) { }
1 690 elsif (/\G\s*\#/cg) { }
548 142 elsif (/\G\s* ( [^\s()\[\];\\]* # unescaped plain chars (?:\\.[^\s()\[\];\\]*)* # (escaped char + unescaped)* )/cgsx and length $1) { }
0 142 elsif (/\G\s*(.)/cg) { }
41 0 13 if $Lisp::Reader::DEBUG
43 0 912 if $Lisp::Reader::DEBUG
44 456 456 if ($1 eq '(' or $1 eq '[') { }
48 2 454 if $1 eq '['
50 0 456 unless @stack
51 0 456 if (ref $form eq 'ARRAY' and @$form == 0)
56 6 450 if $one and not @stack
68 0 275 if $Lisp::Reader::DEBUG
70 2 273 if $one and not @stack
72 0 13 if $Lisp::Reader::DEBUG
74 1 12 if $one and not @stack
88 0 69 if $Lisp::Reader::DEBUG
90 1 68 if $one and not @stack
92 0 12 if $Lisp::Reader::DEBUG
97 0 12 if $one and not @stack
99 0 22 if $Lisp::Reader::DEBUG
114 0 548 if $Lisp::Reader::DEBUG
116 2 546 if $one and not @stack
125 0 154 if (@stack)
130 12 142 if ($one)
131 0 12 if @$form > 1
136 12 142 wantarray ? :
149 7 16 if (length $char == 1) { }
2 14 elsif ($char =~ /^\\([0-7]+)$/) { }
2 12 elsif ($char =~ /^\\\^(.)$/) { }
0 12 elsif ($char eq '\\t') { }
7 5 elsif ($char eq '\\n') { }
1 4 elsif ($char eq '\\a') { }
0 4 elsif ($char eq '\\f') { }
1 3 elsif ($char eq '\\r') { }
0 3 elsif ($char eq '\\e') { }
3 0 elsif ($char =~ /^\\(.)$/) { }
155 0 2 if $ord < 0
175 3 3 if ($_ eq 'C') { }
2 1 elsif ($_ eq 'M') { }
1 0 elsif ($_ eq 'H') { }
0 0 elsif ($_ eq 'S') { }
0 0 elsif ($_ eq 'A') { }
177 0 3 if $ord < 0
179 1 1 $instring ? :