Condition Coverage

File:blib/lib/XML/Twig.pm
Coverage:70.9%

line%coveragecondition
12633
ABdec
0X0
100
111
eval 'require Scalar::Util' and defined \&Scalar::Util::weaken
432100
Adec
00
11
$args{'EltClass'} || 'XML::Twig::Elt'
46320
ABCDdec
0XXX0
10XX0
110X0
11100
11111
not $args{'NoLWP'} and not _use('URI') and not _use('URI::File') and not _use('LWP')
486100
ABdec
000
011
1X1
$$self{'twig_roots'} or $args{'ForceEndTagHandlersUsage'}
53850
Adec
00
11
$args{'Comments'} ||= $COMMENTS_DEFAULT
54550
Adec
00
11
$args{'Pi'} ||= $PI_DEFAULT
556100
Adec
00
11
$args{'ParseStartTag'} || \&_parse_start_tag
65267
ABdec
000
011
1X1
not ref $t or not isa($t, 'XML::Twig')
65717
ABCDEdec
0XXXX0
10XXX0
110XX0
1110X0
111100
111111
$] >= 5.008 and ${^UNICODE} and ${^UNICODE} & 24 and isa($_[0], 'GLOB') and -p $_[0]
67567
ABdec
0X0
100
111
isa($returned, 'XML::Twig') and $$returned{'twig_finish_now'}
70633
ABdec
000
011
1X1
$$t{'twig_keep_encoding'} or $] < 5.006
7410
Adec
00
11
$t->_reset_twig && 0
7480
Adec
00
11
$t->_reset_twig && 0
7550
Adec
00
11
$t->_reset_twig && 0
82067
ABdec
000
011
1X1
$parser ||= 'XML::Parser'->new
864100
ABdec
0X0
100
111
not _check_xml($xml) and $max_tries--
8760
ABdec
0X0
100
111
$encoding eq 'shift-jis' and $xml_parser_encoding{'x-sjis-jisx0221'}
0
ABdec
0X0
100
111
$encoding eq 'euc-jp' and $xml_parser_encoding{'x-euc-jp-jisx0221'}
92220
ABCDdec
0XXX0
10XX0
110X0
11100
11111
$$meta{'http-equiv'} and $$meta{'http-equiv'} =~ /^\s*content-type\s*/i and $$meta{'content'} and $$meta{'content'} =~ m[^\s*text/html\s*;\s*charset\s*=\s*(\S*)\s*]i
9360
ABdec
0X0
100
111
_use('Unicode::Map8') and _use('Unicode::String')
9670
ABdec
0X0
100
111
$3 and $block_tag{$3}
33
ABdec
0X0
100
111
$2 and $block_tag{$2}
1010100
Adec
00
11
$version ||= 0
104567
ABdec
0X0
100
111
defined $base and not $filename =~ m[^(?:[\\/]|\w+:)]
109350
Adec
00
11
$agent ||= 'LWP::UserAgent'->new
11060
ABdec
000
011
1X1
$agent ||= 'LWP::UserAgent'->new
114333
ABdec
0X0
100
111
@saved_default_handler and defined $saved_default_handler[1]
115767
ABdec
0X0
100
111
$$p{'twig'}{'twig_doctype'}{'has_internal'} and not $expat_1_95_2
117267
ABdec
000
011
1X1
isa($_[0], 'GLOB') or isa($_[0], 'IO::Scalar')
1177100
Adec
00
11
$$handlers{'handlers'}{'string'}{$path} || undef
1179100
ABCDEdec
000000
000011
0001X1
001XX1
01XXX1
1XXXX1
_set_special_handler($handlers, $path, $handler, $prev_handler) or _set_pi_handler($handlers, $path, $handler, $prev_handler) or _set_level_handler($handlers, $path, $handler, $prev_handler) or _set_regexp_handler($handlers, $path, $handler, $prev_handler) or _set_xpath_handler($handlers, $path, $handler, $prev_handler)
122650
Adec
00
11
$$a{'score'}{'steps'} || 0
75
ABCdec
0000
0011
01X1
1XX1
($$a{'score'}{'type'} || 0) <=> ($$b{'score'}{'type'} || 0) or ($$b{'score'}{'anchored'} || 0) <=> ($$a{'score'}{'anchored'} || 0) or ($$b{'score'}{'steps'} || 0) <=> ($$a{'score'}{'steps'} || 0)
50
Adec
00
11
$$b{'score'}{'predicates'} || 0
50
Adec
00
11
$$a{'score'}{'predicates'} || 0
50
Adec
00
11
$$b{'score'}{'tests'} || 0
50
Adec
00
11
$$a{'score'}{'tests'} || 0
75
ABCdec
0000
0011
01X1
1XX1
($$a{'score'}{'type'} || 0) <=> ($$b{'score'}{'type'} || 0) or ($$b{'score'}{'anchored'} || 0) <=> ($$a{'score'}{'anchored'} || 0) or ($$b{'score'}{'steps'} || 0) <=> ($$a{'score'}{'steps'} || 0) or ($$b{'score'}{'predicates'} || 0) <=> ($$a{'score'}{'predicates'} || 0) or ($$b{'score'}{'tests'} || 0) <=> ($$a{'score'}{'tests'} || 0)
50
Adec
00
11
$$a{'score'}{'type'} || 0
50
Adec
00
11
$$b{'score'}{'type'} || 0
100
Adec
00
11
$$b{'score'}{'anchored'} || 0
100
Adec
00
11
$$a{'score'}{'anchored'} || 0
50
Adec
00
11
$$b{'score'}{'steps'} || 0
1242100
Adec
00
11
$1 || ''
125767
ABdec
0X0
100
111
!($$stack[-1]{'_tag'} =~ /^#/) && scalar @$stack == $level + 1
129433
ABdec
0X0
100
111
$DEBUG_HANDLER and $path_to_check =~ /\S/
1316100
ABdec
0X0
100
111
defined $last_token_is_sep and not $last_token_is_sep
132633
ABdec
0X0
100
111
$DEBUG_HANDLER >= 1 && "warn q{checking path '${xpath_to_display}'\n};"
1343100
Adec
00
11
$tag ||= '*'
135767
ABdec
000
011
1X1
$last_tag ||= $tag
142980
ABCDdec
00000
00011
001X1
01XX1
1XXX1
$func or $string_regexp or $string_test_num or $string_test_alpha
143133
ABdec
0X0
100
111
$string_test_num and $string_test_num =~ /string\(\s*($REG_NAME)\s*\)\s*($REG_COMP)\s*($REG_NUMBER)/
100
ABdec
0X0
100
111
$num_test and $num_test eq '='
67
ABdec
0X0
100
111
$func and $func =~ /^string/
67
ABdec
0X0
100
111
$string_regexp and $string_regexp =~ /string\(\s*($REG_NAME)\s*\)\s*($REG_MATCH)\s*($REG_REGEXP)/
67
ABdec
0X0
100
111
$string_test_alpha and $string_test_alpha =~ /string\(\s*($REG_NAME)\s*\)\s*($REG_COMP)\s*($REG_STRING)/
149067
ABdec
000
011
1X1
shift @_ || return
1500100
Adec
00
11
$$t{'twig_handlers'} ||= {}
1506100
Adec
00
11
$$t{'twig_handlers'} || undef
151450
Adec
00
11
$$t{'twig_starttag_handlers'} ||= {}
1520100
Adec
00
11
$$t{'twig_starttag_handlers'} || undef
152850
Adec
00
11
$$t{'twig_ignore_elts_handlers'} ||= {}
1542100
Adec
00
11
$$t{'twig_endtag_handlers'} ||= {}
1564100
Adec
00
11
$$t{'twig_handlers'} ||= {}
161150
Adec
00
11
$t->_reset_twig && 0
164175
ABCdec
0000
0011
01X1
1XX1
$$t{'twig_stored_spaces'} or $option{'force'} or $$t{'twig_preserve_space'}
164980
ABCDdec
00000
00011
001X1
01XX1
1XXX1
$$t{'twig_space_policy'}{$current_gi} or not $$t{'twig_stored_spaces'} =~ /\n/ or $option{'force'} or $$t{'twig_preserve_space'}
177367
ABdec
0X0
100
111
$$elt{'att'}{'xml:space'} and $$elt{'att'}{'xml:space'} eq 'preserve'
1783100
ABdec
0X0
100
111
not $$t{'twig_keep_original_prefix'} and my $mapped_prefix = $$t{'twig_map_xmlns'}{$uri}
183967
ABdec
000
011
1X1
$$t{'twig_map_xmlns'}{$$ns_info{'uri'}} || $$ns_info{'prefix'}
185975
ABCdec
0XX0
10X0
1100
1111
not exists $value{$att} and exists $$attlist{$att}{'default'} and $$attlist{$att}{'default'} ne '#IMPLIED'
1952100
ABdec
0X0
100
111
$$t{'twig_root_depth'} and $p->depth == $$t{'twig_root_depth'}
196567
ABdec
0X0
100
111
$$elt{'att'}{'xml:space'} and $$elt{'att'}{'xml:space'} eq 'preserve'
2010100
ABdec
0X0
100
111
not @found_handlers and defined $$handlers{'handlers'}{$DEFAULT}
2013100
ABdec
0X0
100
111
@found_handlers and $$t{'twig_do_not_chain_handlers'}
2027100
ABdec
0X0
100
111
not $uri and not $name =~ /^xml/
213267
ABdec
0X0
100
111
$t->_space_policy($XML::Twig::index2gi[$$twig_current{'gi'}]) and $$t{'twig_stored_spaces'}
218967
ABdec
000
011
1X1
$$t{'twig_handlers'}{'pi_handlers'} || return
2200100
ABdec
0X0
100
111
defined $data && $data ne ''
2213100
ABdec
000
011
1X1
not defined $comment or $comment eq ''
229067
ABdec
0X0
100
111
$t->_space_policy($XML::Twig::index2gi[$$twig_current{'gi'}]) and $$t{'twig_stored_spaces'}
231567
ABdec
000
011
1X1
$$t{$type} ||= $$t{'twig_elt_class'}->new('#CPI')
2380100
ABdec
0X0
100
111
$$t{'twig_keep_spaces_in'} and $$t{'twig_keep_spaces_in'}{$gi}
2382100
ABdec
0X0
100
111
$$t{'twig_discard_spaces_in'} and $$t{'twig_discard_spaces_in'}{$gi}
242633
ABdec
0X0
100
111
defined $$ent{'val'} and not $ent_decl =~ /["']/
2465100
Adec
00
11
$level || 0
247450
Adec
00
11
$$t{'twig_xmldecl'} ||= {}
248550
Adec
00
11
$$t{'twig_doctype'} ||= {}
25000
Adec
00
11
$internal ||= ''
2507100
ABdec
0X0
100
111
$$t{'twig_read_external_dtd'} and $sysid
2512100
Adec
00
11
$$t{'ErrorContext'} || 0
2527100
Adec
00
11
$$t{'twig_dtd'} ||= {}
2528100
Adec
00
11
$$t{'twig_dtd'}{'model'} ||= {}
2529100
Adec
00
11
$$t{'twig_dtd'}{'elt_list'} ||= []
253233
ABdec
0X0
100
111
$parser_version > 2.27 and $$t{'twig_doctype'}{'internal'} =~ /(^|>)\s*$/
255050
Adec
00
11
$$t{'twig_dtd'} ||= {}
2551100
Adec
00
11
$$t{'twig_dtd'}{$gi} ||= {}
255333
ABdec
0X0
100
111
$parser_version > 2.27 and $$t{'twig_doctype'}{'internal'} =~ /(^|>)\s*$/
259033
ABdec
0X0
100
111
$p->original_string =~ /^</ and $p->original_string =~ />$/
2658100
ABdec
000
011
1X1
$$t{'twig_xmldecl'} or $$t{'output_encoding'}
270750
Adec
00
11
$$doctype{'name'} || ''
2713100
Adec
00
11
$$doctype{'sysid'} || ''
2719100
Adec
00
11
$$doctype{'pub'} || ''
2725100
Adec
00
11
$$doctype{'internal'} || ''
276533
ABdec
000
011
1X1
$$t{'twig_output_fh'} || select || \*STDOUT
2782100
Adec
00
11
$args{'UpdateDTD'} || ''
2790100
ABdec
0X0
100
111
$$doctype{'sysid'} and not $$doctype{'pub'}
279533
ABdec
0X0
100
111
not $$t{'twig_dtd'} and keys %{$t->entity_list;}
2803100
Adec
00
11
$t->entity_list->text || ''
284167
ABdec
000
011
1X1
$$t{'leading_cpi'} || return('')
284767
ABdec
000
011
1X1
$$t{'trailing_cpi'} || return('')
2853100
Adec
00
11
$$t{'trailing_cpi_text'} || ''
285933
ABdec
0X0
100
111
$] > 5.006 and not $$t{'twig_keep_encoding'}
294267
ABdec
0X0
100
111
$last_elt and $last_elt->in($elt)
295667
ABdec
0X0
100
111
$last_elt and $elt == $last_elt
304467
ABdec
0X0
100
111
$last_elt and $last_elt->in($elt)
305267
ABdec
0X0
100
111
$last_elt and $elt == $last_elt
3084100
ABdec
0X0
100
111
$elt_class->can($att) and not $accessor{$att}
310433
ABdec
000
011
1X1
$t->root || return(undef)
311133
ABdec
000
011
1X1
$t->root || return(undef)
3136100
ABdec
0X0
100
111
@unique and $unique[-1] == $current
3167100
ABdec
0X0
100
111
$cond && !$root->passes($cond)
332967
ABdec
000
011
1X1
not $input_filter or isa($input_filter, 'CODE')
338967
ABdec
0X0
100
111
$$t{'twig_root'} and isa($$t{'twig_root'}, 'XML::Twig')
343025
ABCdec
0XX0
10X0
1100
1111
$expat_1_95_2 and $p->recognized_string eq '[' and not $$p{'twig'}{'expat_1_95_2_seen_bracket'}
348367
ABdec
0X0
100
111
$sysid and not $pubid
348567
ABdec
0X0
100
111
$internal and not $expat_1_95_2
348667
ABdec
000
011
1X1
$internal or $expat_1_95_2
350367
ABdec
0X0
100
111
$sysid and not $pubid
350667
ABdec
000
011
1X1
$internal or $expat_1_95_2
353767
ABdec
000
011
1X1
$$t{'twig_output_fh'} || select || \*STDOUT
357675
ABCdec
0XX0
1000
1011
11X1
$tag and !@handlers || $last_handler_res
359467
ABdec
000
011
1X1
$$t{'twig_output_fh'} || select || \*STDOUT
360167
ABdec
000
011
1X1
&$handler($t, $gi) || last
362867
ABdec
000
011
1X1
$$t{'twig_output_fh'} || select || \*STDOUT
363067
ABdec
000
011
1X1
$$t{'twig_handlers'}{'pi_handlers'}{$target} || $$t{'twig_handlers'}{'pi_handlers'}{''}
369533
ABdec
000
011
1X1
&$handler($t, $gi) || last
3708100
ABdec
0X0
100
111
$elt && isa($elt, 'XML::Twig::Elt')
3714100
ABCDdec
00X00
00X11
01000
01011
011X1
1XXX1
$elt == $current or $$current{'last_child'} and $elt == $$current{'last_child'} or $current->in($elt)
372150
Adec
00
11
shift @_ || 1
374167
ABdec
0X0
100
111
$$elt_in_stack{'_elt'} and $elt == $$elt_in_stack{'_elt'}
3752100
ABdec
0X0
100
111
$output_fh and not $$t{'twig_output_fh_selected'}
377750
Adec
00
11
$$t{'twig_xmldecl'} ||= {}
3788100
Adec
00
11
$t->output_filter || ''
379071
ABCDdec
0X000
0X011
0X1X1
10000
10011
101X1
11XX1
$encoding and not $encoding =~ /^utf-?8$/i or $$t{'twig_keep_encoding'} or $output_filter
3791100
Adec
00
11
$encoding || ''
380150
Adec
00
11
$$t{'twig_xmldecl'} ||= {}
381050
Adec
00
11
$$t{'twig_xmldecl'} ||= {}
388067
ABdec
0X0
100
111
$last_elt and $last_elt->in($elt)
389767
ABdec
0X0
100
111
$last_elt and $elt == $last_elt
39470
ABdec
0X0
100
111
_use('Unicode::Map8') and _use('Unicode::String')
396067
ABdec
000
011
1X1
$_[1] || $_[0]
39610
ABdec
0X0
100
111
_use('Unicode::Map8') and _use('Unicode::String')
413467
ABdec
0X0
100
111
$ents_to_add and %$ents_to_add
420833
ABdec
000
011
1X1
ref $class || $class
425675
ABCdec
0XX0
10X0
1100
1111
defined $$ent{'val'} and not defined $$ent{'sysid'} and not defined $$ent{'pubid'}
436933
ABdec
0X0
100
111
eval 'require Scalar::Util' and defined &Scalar::Util::weaken
438467
ABdec
000
011
1X1
ref $class || $class
4397100
ABdec
0X0
100
111
$atts and defined $$atts{'#CDATA'}
4538100
ABdec
000
011
1X1
$DEFAULT_NS{$prefix} || $elt->_inherit_att_through_cut($ns_att) || ''
45490
ABdec
0X0
100
111
not $missing_prefix{$prefix} and not $elt->namespace
45890
ABdec
0X0
100
111
$elt->_ns_prefix and $elt->namespace eq $uri
463433
ABdec
000
011
1X1
exists $$elt{'ent'} || $$elt{'ent_name'}
4640100
ABdec
000
011
1X1
exists $$elt{'pcdata'} || exists $$elt{'cdata'}
4644100
Adec
00
11
$_[0]{'empty'} || 0
465050
Adec
00
11
$_[0]{'empty'} or 0
467933
ABdec
000
011
1X1
$elt->twig || return
4702100
Adec
00
11
$_[0]{'extra_data_before_end_tag'} || ''
4734100
ABdec
000
011
1X1
_match_extra_data_words($elt, $initial, $modified) or _match_extra_data_chars($elt, $initial, $modified)
477033
ABdec
000
011
1X1
shift @$positions || $length + 1
479033
ABdec
000
011
1X1
shift @$positions || $length + 1
4811100
ABdec
0X0
100
111
@$long and $s_word ne $l_word
4815100
ABdec
0X0
100
111
not @$long and $s_word ne $l_word
4844100
Adec
00
11
$_[0]{'extra_data'} || ''
487633
ABdec
0X0
100
111
defined $data and $data ne ''
4934100
Adec
00
11
@children || 1
49540
ABdec
000
011
1X1
$$elt{'parent'} || $elt->former_parent
0
ABdec
000
011
1X1
$$elt{'parent'} or $elt->former_parent
5035100
ABdec
0X0
100
111
$gi and $gi ne '*'
5047100
ABdec
0X0
100
111
$tag && $tag ne '*'
507533
ABdec
0X0
100
111
$string_test and $string_test =~ /(?:string|text)\(\s*($REG_NAME)\s*\)\s*([<>]=?)\s*($REG_VALUE)/
67
ABdec
0X0
100
111
$num_test and $num_test eq '='
67
ABdec
0X0
100
111
$func and $func =~ /^(?:string|text)/
67
ABdec
0X0
100
111
$string_regexp and $string_regexp =~ /(?:string|text)\(\s*($REG_NAME)\s*\)\s*($REG_MATCH)\s*($REG_REGEXP)/
67
ABdec
0X0
100
111
$string_eq and $string_eq =~ /(?:string|text)\(\s*($REG_NAME)\s*\)\s*(!?=)\s*($REG_VALUE)/
511967
ABdec
000
011
1X1
$cond_cache{$cond} ||= _install_cond($cond)
513167
ABdec
000
011
1X1
shift @_ || return($$elt{'parent'})
513267
ABdec
000
011
1X1
$$elt{'parent'} || return
67
ABdec
000
011
1X1
not $elt or $elt->passes($cond)
514367
ABdec
000
011
1X1
shift @_ || return($$elt{'first_child'})
514567
ABdec
000
011
1X1
$cond_cache{$cond} ||= _install_cond($cond)
5146100
ABdec
0X0
100
111
$child and not &$test_cond($child)
518667
ABdec
000
011
1X1
shift @_ || return($$elt{'last_child'})
518767
ABdec
000
011
1X1
$cond_cache{$cond} ||= _install_cond($cond)
5189100
ABdec
0X0
100
111
$child and not &$test_cond($child)
520267
ABdec
000
011
1X1
shift @_ || return($$elt{'prev_sibling'})
520367
ABdec
000
011
1X1
$cond_cache{$cond} ||= _install_cond($cond)
5205100
ABdec
0X0
100
111
$sibling and not &$test_cond($sibling)
521467
ABdec
000
011
1X1
shift @_ || return($$elt{'next_sibling'})
521533
ABdec
000
011
1X1
$cond_cache{$cond} ||= _install_cond($cond)
5217100
ABdec
0X0
100
111
$sibling and not &$test_cond($sibling)
524767
ABdec
0X0
100
111
$elt->tag eq 'span' and $elt->class
525367
ABdec
0X0
100
111
$elt->tag eq 'div' and $elt->class
5271100
Adec
00
11
$_[0] || ''
528550
ABCdec
0XX0
10X0
1100
1111
$_[0] and ref $_[0] and not $_[1]
534767
ABdec
000
011
1X1
$elt->twig || $elt
536833
ABdec
0X0
100
111
$_[0] && isa($_[0], 'CODE')
538367
ABdec
000
011
1X1
shift @_ || $elt->twig
5494100
ABCdec
0XX0
1000
1011
11X1
defined $$elt{'att'}{$att} and !%tags || $tags{$XML::Twig::index2gi[$$elt{'gi'}]}
550867
ABdec
000
011
1X1
$$elt{'parent'} || $elt->former_parent
50
ABCdec
0XX0
1000
1011
11X1
defined $$elt{'att'}{$att} and !%tags || $tags{$XML::Twig::index2gi[$$elt{'gi'}]}
5542100
ABdec
0X0
100
111
defined $_[0] and isa($_[0], 'XML::Twig::Elt')
555067
ABdec
000
011
1X1
$cond_cache{$cond} ||= _install_cond($cond)
555489
ABCDEFdec
000X0X0
000X100
000X111
00100X0
0010100
0010111
0011XX1
01XXXX1
1XXXXX1
not defined $elt or not defined $cond or defined $ind and $$elt{'gi'} eq $ind or defined $test_cond and &$test_cond($elt)
5561100
ABdec
0X0
100
111
$subtree_root and $elt == $subtree_root
5569100
ABdec
0X0
100
111
$subtree_root and $elt == $subtree_root
5574100
ABdec
0X0
100
111
$subtree_root and $subtree_root == $next_elt
557567
ABdec
000
011
1X1
$$next_elt{'parent'} || return(undef)
5577100
ABdec
0X0
100
111
$subtree_root and $subtree_root == $next_elt
5598100
ABdec
000
011
1X1
not $cond or $last_descendant->matches($cond)
5619100
ABdec
0X0
100
111
defined $_[0] and isa($_[0], 'XML::Twig::Elt')
563367
ABdec
000
011
1X1
$$elt{'parent'} || return(undef)
5642100
ABdec
0X0
100
111
$elt and not $$elt{'next_sibling'}
564967
ABdec
000
011
1X1
$elt->_following_elt || return(undef)
565067
ABdec
000
011
1X1
not $cond or $elt->matches($cond)
5670100
ABdec
0X0
100
111
$elt and not $$elt{'prev_sibling'}
567767
ABdec
000
011
1X1
$elt->_preceding_elt || return(undef)
567867
ABdec
000
011
1X1
not $cond or $elt->matches($cond)
570467
ABdec
000
011
1X1
shift @_ || return(undef)
570667
ABdec
000
011
1X1
$elt->next_elt(@_) || return(undef)
589450
Adec
00
11
shift @_ || ''
5895100
ABdec
000
011
1X1
not $cond or $elt->matches($cond)
593733
ABdec
000
011
1X1
$$elt{'parent'} || last
594033
ABdec
000
011
1X1
$$next_elt{'parent'} || last MAIN
594533
ABdec
000
011
1X1
$next_elt || last MAIN
5961100
ABdec
000
011
1X1
not $cond or defined($ind = $XML::Twig::gi2index{$cond})
597333
ABdec
0X0
100
111
$subtree_root and $elt == $subtree_root
598067
ABdec
0X0
100
111
$subtree_root and $elt == $subtree_root
598333
ABdec
000
011
1X1
$$elt{'parent'} || last
598567
ABdec
0X0
100
111
$subtree_root and $subtree_root == $next_elt
598633
ABdec
000
011
1X1
$$next_elt{'parent'} || last
598867
ABdec
0X0
100
111
$subtree_root and $subtree_root == $next_elt
599133
ABdec
000
011
1X1
$next_elt || last
5992100
ABdec
000
011
1X1
not $cond or $$elt{'gi'} eq $ind
6060100
ABdec
0X0
100
111
$_[0] and not $elt->matches(@_)
6108100
ABdec
0X0
100
111
$xpath_exp and $xpath_exp =~ s[^\s*(/?) # the xxx=~/regexp/ is a pain as it includes / (\s*(?:(?:($REG_AXIS)::)?(\*|$REG_NAME|\.\.|\.)\s*)?($REG_PREDICATE_ALT*) ) (/|$)][]ox
6130100
ABdec
000
011
1X1
not $gi or $gi eq '*'
6134100
ABdec
0X0
100
111
$predicates and $predicates =~ /^\s*\[\s*last\s*\(\s*\)\s*\]\s*$/
100
ABdec
0X0
100
111
$predicates and $predicates =~ /^\s*\[\s*((-\s*)?\d+)\s*\]\s*$/
6176100
ABdec
0X0
100
111
not $syntax_error and $pred
622750
Adec
00
11
$XML::Twig::XPath::VERSION or 0
6244100
ABdec
000
011
1X1
$xpath{$xpath_exp} ||= _install_xpath($xpath_exp)
6304100
ABCDdec
0XXX0
10XX0
110X0
11100
11111
$prev_sibling and $next_sibling and $prev_sibling->is_text and $XML::Twig::index2gi[$$prev_sibling{'gi'}] eq $XML::Twig::index2gi[$$next_sibling{'gi'}]
6374100
ABCdec
0XX0
10X0
1100
1111
$prev_sibling and $prev_sibling->is_text and $XML::Twig::index2gi[$$first_child{'gi'}] eq $XML::Twig::index2gi[$$prev_sibling{'gi'}]
6376100
ABCdec
0XX0
10X0
1100
1111
$next_sibling and $next_sibling->is_text and $XML::Twig::index2gi[$$last_child{'gi'}] eq $XML::Twig::index2gi[$$next_sibling{'gi'}]
638067
ABdec
0X0
100
111
$$elt{'parent'}{'twig_current'} and $$elt{'last_child'}->is_text
6404100
ABdec
000
011
1X1
$$elt{'first_child'} || $$elt{'next_sibling'}
6408100
Adec
00
11
$target->extra_data || ''
6422100
Adec
00
11
$target->extra_data || ''
6472100
ABCDdec
0XXX0
10XX0
110X0
11100
11111
not $$ref{'parent'} and $pos =~ /^(before|after)$/ and not exists $$elt{'target'} and not exists $$elt{'comment'}
648167
ABdec
0X0
100
111
my $ids = $$elt{'twig_id_list'} and my $t = $ref->twig
648250
Adec
00
11
$$t{'twig_id_list'} ||= {}
6496100
ABdec
000
011
1X1
exists $$elt{'comment'} or exists $$elt{'target'}
6526100
ABdec
000
011
1X1
exists $$elt{'comment'} or exists $$elt{'target'}
661667
ABdec
000
011
1X1
$options{'normalise_space'} ||= $options{'normalize_space'} || 0
6618100
Adec
00
11
$options{'content_key'} ||= 'content'
6627100
Adec
00
11
$options{'forcearray'} ||= 0
6634100
Adec
00
11
$options{'keyattr'} ||= ['name', 'key', 'id']
663850
Adec
00
11
$prefix ||= ''
6647100
Adec
00
11
$prefix ||= ''