Branch Coverage

lib/XML/Parser/Lite/Tree/XPath/Tokener.pm
Criterion Covered Total %
branch 57 86 66.2


line true false branch
24 0 1507 if $$self{'error'}
29 0 216 if $$self{'error'}
33 0 216 if $$self{'error'}
48 538 969 if ($$self{'input'} =~ /^(\(|\)|\[|\]|\.\.|\.|\@|,|::)/)
59 81 888 if ($$self{'input'} =~ /^(\*)/)
66 0 888 if ($$self{'input'} =~ /^($$self{'rx'}{'NCName'})\:\*/)
77 424 464 if ($$self{'input'} =~ /^((($$self{'rx'}{'NCName'})\\x3a)?($$self{'rx'}{'NCName'}))/)
79 0 424 if defined $3
80 0 424 if defined $3
91 0 464 if ($$self{'input'} =~ /^(comment|text|processing-instruction|node)/)
102 304 160 if ($$self{'input'} =~ m[^(and|or|mod|div|//|/|\||\+|-|=|!=|<=|<|>=|>)])
121 68 92 if ($$self{'input'} =~ /^(('[^']*')|("[^"]*"))/)
135 92 0 if ($$self{'input'} =~ /^($$self{'rx'}{'Number'})/)
146 0 0 if ($$self{'input'} =~ /^\$($$self{'rx'}{'QName'})/)
163 1507 0 if defined $content
190 1291 216 if defined $prev
208 1291 216 if (defined $$token{'prev'})
211 641 347 unless ($p->match('Symbol', '@') or $p->match('Symbol', '::') or $p->match('Symbol', '(') or $p->match('Symbol', '[') or $p->match('Symbol', ',') or $p->match('Operator'))
218 1 640 if ($$token{'type'} eq 'Star') { }
222 18 622 if ($$token{'type'} eq 'NCName')
224 18 0 if ($self->is_OperatorName($$token{'content'})) { }
244 406 1101 if ($token->match('NCName'))
246 366 40 if (defined $$token{'next'})
248 130 236 if ($$token{'next'}->match('Symbol', '('))
250 9 121 if ($self->is_NodeType($$token{'content'})) { }
267 276 1231 if ($token->match('NCName'))
269 236 40 if (defined $$token{'next'})
271 84 152 if ($$token{'next'}->match('Symbol', '::'))
273 84 0 if ($self->is_AxisName($$token{'content'})) { }
296 80 1427 if ($token->match('Star'))
300 192 1315 if ($token->match('NCName'))
301 0 192 if (defined $$token{'next'} and $$token{'next'}->match('NameTestPostfix')) { }
307 0 192 if (defined $$token{'next'} and $$token{'next'}->match('QNameSep') and defined $$token{'next'}{'next'} and $$token{'next'}{'next'}->match('NCName')) { }
342 0 1507 if ($token->match('NameTestBase'))
350 0 1507 if ($token->match('QNamePre'))
371 18 0 if $content =~ /^(and|or|mod|div)$/
378 9 121 if $content =~ /^(comment|text|processing-instruction|node)$/
385 84 0 if $content =~ /^(ancestor|ancestor-or-self|attribute|child|descendant|descendant-or-self| following|following-sibling|namespace|parent|preceding|preceding-sibling|self)$/x
402 0 0 unless $$self{'type'} eq $type
404 0 0 if defined $content and $$self{'content'} ne $content
413 0 0 if $$self{'absolute'}
414 0 0 if defined $$self{'content'}
415 0 0 if defined $$self{'axis'}