XML, the Perl Way

Branch Coverage

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

line % coverage branch
152 100 T F unless $parser_version >= $needVersion
156 50 T F if ($perl_version >= 5.008)
165 50 T F if (eval 'require Scalar::Util' and defined \&Scalar::Util::weaken) { }
0 T F elsif (eval 'require WeakRef') { }
453 100 T F unless ($args{'MoreOptions'})
455 100 T F unless $XML::Twig::valid_option{$arg}
471 100 T F if (exists $args{'TwigHandlers'})
478 100 T F if (exists $args{'StartTagHandlers'})
483 100 T F if (exists $args{'DoNotChainHandlers'})
486 100 T F if (exists $args{'IgnoreElts'})
488 100 T F if (isa($args{'IgnoreElts'}, 'ARRAY'))
493 100 T F if (exists $args{'Index'})
496 100 T F if (ref $index eq 'ARRAY')
505 100 T F if (defined $args{'EltClass'} and $args{'EltClass'} ne 'XML::Twig::Elt')
506 100 T F if (exists $args{'EltClass'})
508 100 T F if (exists $args{'MapXmlns'})
514 100 T F if (exists $args{'KeepOriginalPrefix'})
522 100 T F if ($args{'ExpandExternalEnts'}) { }
526 100 T F if ($args{'ExpandExternalEnts'} == -1)
536 50 T F if (not $args{'NoLWP'} || _use('URI') || _use('URI::File') || _use('LWP')) { }
541 100 T F if ($args{'DoNotEscapeAmpInAtts'}) { }
553 100 T F if ($args{'TwigRoots'})
558 100 T F if ($args{'EndTagHandlers'})
559 100 T F unless ($$self{'twig_roots'} or $args{'ForceEndTagHandlersUsage'})
572 100 T F if ($args{'TwigPrintOutsideRoots'})
573 100 T F unless $$self{'twig_roots'}
576 100 T F if (_is_fh($args{'TwigPrintOutsideRoots'}))
582 100 T F if ($args{'KeepSpaces'})
583 100 T F if $args{'DiscardSpaces'}
584 100 T F if $args{'DiscardAllSpaces'}
585 100 T F if $args{'KeepSpacesIn'}
589 100 T F if ($args{'DiscardSpaces'})
591 100 T F if $args{'KeepSpacesIn'}
592 100 T F if $args{'DiscardAllSpaces'}
593 100 T F if $args{'DiscardSpacesIn'}
597 100 T F if ($args{'KeepSpacesIn'})
598 100 T F if $args{'DiscardSpacesIn'}
599 100 T F if $args{'DiscardAllSpaces'}
607 100 T F if ($args{'DiscardAllSpaces'})
609 100 T F if $args{'DiscardSpacesIn'}
614 100 T F if ($args{'DiscardSpacesIn'})
622 100 T F unless $$self{'twig_keep_spaces'}
625 100 T F if ($args{'Comments'} eq 'drop') { }
100 T F elsif ($args{'Comments'} eq 'keep') { }
100 T F elsif ($args{'Comments'} eq 'process') { }
632 100 T F if ($args{'Pi'} eq 'drop') { }
100 T F elsif ($args{'Pi'} eq 'keep') { }
100 T F elsif ($args{'Pi'} eq 'process') { }
638 100 T F if ($args{'KeepEncoding'}) { }
643 100 T F if defined $args{'ParseStartTag'}
648 100 T F if ($args{'ParseStartTag'}) { }
655 100 T F if ($args{'OutputFilter'}) { }
662 100 T F if ($args{'RemoveCdata'}) { }
669 100 T F if ($args{'OutputTextFilter'}) { }
676 100 T F if (exists $args{'KeepAttsOrder'}) { }
678 100 T F if (_use('Tie::IxHash')) { }
687 100 T F if ($args{'PrettyPrint'})
688 100 T F if ($args{'EscapeGt'})
689 100 T F if ($args{'EmptyTags'})
691 100 T F if (exists $args{'Id'})
692 100 T F if ($args{'NoProlog'})
693 100 T F if ($args{'DoNotOutputDTD'})
694 100 T F if ($args{'LoadDTD'})
695 100 T F if ($args{'CharHandler'})
697 100 T F if ($args{'InputFilter'})
698 100 T F if ($args{'NoExpand'})
699 100 T F if (my $output_encoding = $args{'OutputEncoding'})
701 100 T F if (my $tdh = $args{'TopDownHandlers'})
703 100 T F if (my $acc_a = $args{'AttAccessors'})
704 100 T F isa($acc_e, 'ARRAY') ? :
100 T F if (my $acc_e = $args{'EltAccessors'})
705 100 T F isa($acc_f, 'ARRAY') ? :
100 T F if (my $acc_f = $args{'FieldAccessors'})
707 100 T F if ($args{'UseTidy'})
710 100 T F if ($args{'OutputHtmlDoctype'})
715 100 T F if ($$self{'twig_roots'}) { }
716 100 T F if ($$self{'twig_default_print'}) { }
717 100 T F if ($$self{'twig_keep_encoding'}) { }
742 100 T F if ($XML::Twig::weakrefs)
751 100 T F unless (ref $t and isa($t, 'XML::Twig'))
756 50 T F if ($perl_version >= 5.008 and ${^UNICODE} and ${^UNICODE} & 24 and isa($_[0], 'GLOB') and -p $_[0])
763 100 T F if (not $t and $@ =~ /(syntax error at line 1, column 0, byte 0|not well-formed \(invalid token\) at line 1, column 1, byte 1)/ and -f $_[0])
773 100 T F if (-f $_[0] and not -s $_[0])
780 100 T F unless ($t)
781 100 T F if (isa($returned, 'XML::Twig') and $$returned{'twig_finish_now'}) { }
808 50 T F unless _use('File::Temp')
816 50 T F unless ($$t{'twig_keep_encoding'} or $perl_version < 5.006)
817 50 T F if (grep /useperlio=define/, `$^X -V`)
826 50 T F unless chmod $mode, $tmpfile
828 100 T F if ($suffix)
830 100 T F if ($suffix =~ /\*/) { }
833 50 T F unless rename $file, $backup
835 50 T F unless rename $tmpfile, $file
854 50 T F $@ ? :
859 50 T F unless _use('LWP::Simple')
861 50 T F $@ ? :
866 50 T F unless _use('LWP::Simple')
875 50 T F $@ ? :
881 100 T F $$t{'ErrorContext'} ? :
883 100 T F $$t{'use_tidy'} ? :
884 100 T F $$t{'use_tidy'} ? :
891 100 T F ref $_[0] && ref $_[0] eq 'HASH' ? :
892 100 T F exists $$options{'use_tidy'} ? :
894 50 T F $$t{'ErrorContext'} ? :
896 100 T F $use_tidy ? :
897 100 T F $use_tidy ? :
898 100 T F isa($content, 'GLOB') ? :
905 100 T F if (isa($to_parse, 'GLOB')) { }
100 T F elsif ($to_parse =~ /^\s*</) { }
100 T F elsif ($to_parse =~ m[^\w+://.*\.html?$]) { }
100 T F elsif ($to_parse =~ m[^\w+://]) { }
100 T F elsif ($to_parse =~ /\.html?$/) { }
906 100 T F $to_parse =~ /<html/i ? :
909 100 T F unless _use('LWP::Simple')
912 100 T F unless _use('LWP::Simple')
914 100 T F unless (defined $doc)
916 100 T F if ($xml_parse_ok) { }
920 100 T F if ($doc =~ /<html/i) { }
934 100 T F if (_is_well_formed_xml($_[0])) { }
937 50 T F $$t{'use_tidy'} ? :
938 50 T F $$t{'use_tidy'} ? :
940 50 T F if (_is_well_formed_xml($html)) { }
951 100 T F $@ ? :
968 100 T F unless _use('HTML::TreeBuilder', '3.13')
979 100 T F if ($$options{'html_doctype'} and exists $$tree{'_decl'})
991 50 T F if ($decl =~ /<!DOCTYPE \s+ (?i:HTML) (\s+ PUBLIC \s+ "[^"]*" \s+ (SYSTEM \s+)? "[^"]*")? \s*>/x or $decl =~ /<!DOCTYPE \s+ (?i:HTML) \s+ SYSTEM \s+ "[^"]*" \s*>/x)
1002 100 T F if ($$options{'indent'})
1010 50 T F unless _use('HTML::Tidy')
1045 100 T F if ($@ =~ /^\s*xml (or text )?declaration not at start of (external )?entity/i) { }
50 T F elsif ($@ =~ /undefined entity/) { }
50 T F elsif ($@ =~ /&Amp; used in html/) { }
50 T F elsif ($@ =~ /^\s*not well-formed \(invalid token\)/) { }
1050 0 T F if $HTML::TreeBuilder::VERSION < 4
1051 0 T F if (_use('HTML::Entities::Numbered'))
1052 0 T F if (not $ent =~ /^(amp|lt|gt|apos|quote)$/)
1056 0 T F if $HTML::TreeBuilder::VERSION < 4
1059 100 T F if ($HTML::TreeBuilder::VERSION < 4)
1064 50 T F if (_use('HTML::Entities::Numbered'))
1065 50 T F if ($$xml =~ /$q/) { }
1070 50 T F unless (keys %xml_parser_encoding)
1072 50 T F if (not $add_decl) { }
1073 100 T F if ($xml_parser_encoding{$encoding}) { }
50 T F elsif ($encoding eq 'euc-jp' and $xml_parser_encoding{'x-euc-jp-jisx0221'}) { }
50 T F elsif ($encoding eq 'shift-jis' and $xml_parser_encoding{'x-sjis-jisx0221'}) { }
1080 100 T F if ($add_decl) { }
1132 100 T F if (ref $node) { }
100 T F elsif ($node =~ /<!\[CDATA\[/) { }
1135 100 T F if ($start) { }
1140 100 T F if ($att =~ /^\d/)
1143 100 T F if ($new_att ne $att)
1146 50 T F unless $$node{'_content'}
100 T F if ($$empty_element_map{$tag} and not @{[] unless $$node{'_content'};}) { }
1153 0 T F unless $$node{'_content'}
50 T F unless ($$empty_element_map{$tag} and not @{[] unless $$node{'_content'};})
1160 100 T F $chunk =~ /<!\[CDATA\[/ ? :
1184 50 T F if ($HTML::TreeBuilder::VERSION and $HTML::TreeBuilder::VERSION <= 3.23)
1210 50 T F if ($$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)
1224 50 T F if (_use('Encode')) { }
0 T F elsif (_use('Text::Iconv')) { }
0 T F elsif (_use('Unicode::Map8') and _use('Unicode::String')) { }
1228 0 T F if ($converter)
1254 100 T F if ($2 and $block_tag{$2}) { }
100 T F elsif ($4 and $block_tag{$4}) { }
100 T F elsif ($5 and $block_tag{$5}) { }
1258 50 T F unless $4 =~ m[/>]
1259 100 T F $4 eq 'html' ? :
1278 100 T F if ($text_type{$type}) { }
1303 100 T F if ($disallowed{$module})
1304 100 T F if ($used{$module})
1305 100 T F if (eval "require $module") { }
1306 100 T F if ($version) { }
1310 100 T F if (${"${module}::VERSION";} >= $version) { }
1326 100 T F if ($n > 0) { }
100 T F elsif ($n < 0) { }
1327 100 T F if $i == $n
100 T F if (&$coderef)
1329 100 T F if $i == $n
100 T F if (&$coderef)
1337 100 T F if ($uri =~ m[^\w+://]) { }
1344 100 T F if (defined $base and not $filename =~ m[^(?:[\\/]|\w+:)])
1355 100 T F unless open $to_slurp, "<$filename"
1378 50 T F unless _use('LWP')
1379 50 T F if ($^O ne 'VMS') { }
1380 50 T F unless pipe README, WRITEME
1381 100 T F if (my $pid = fork) { }
1384 100 T F $safe ? :
1386 100 T F $@ ? :
1398 100 T F unless $response->is_success
1409 0 T F unless $response->is_success
1410 0 T F $safe ? :
1411 0 T F $@ ? :
1435 100 T F if ($$t{'twig_keep_encoding'})
1443 50 T F if (@saved_default_handler and defined $saved_default_handler[1]) { }
1457 100 T F if ($$p{'twig'}{'twig_doctype'}{'has_internal'} and not $expat_1_95_2)
1472 50 T F unless $_[0]
100 T F if isa($_[0], 'GLOB') or isa($_[0], 'IO::Scalar')
1492 100 T F unless _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)
1504 100 T F if ($cpath)
1512 100 T F if ($path =~ /^\s*($ALL|$DEFAULT|$COMMENT|$TEXT)\s*$/io) { }
1522 100 T F if (my $handler_data = _parse_xpath_handler($path, $handler)) { }
1534 100 T F $$handlers{'xpath_handler'}{$tag} ? :
1536 100 T F if ($prev_handler)
1538 100 T F if $$handler_data{'handler'}
1540 100 T F if (@handlers > 1)
1541 100 T F unless ($$b{'score'}{'type'} || 0) <=> ($$a{'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)
1557 100 T F if ($path =~ /^\s*(?:\?|$PI)\s*(?:([^\s]*)\s*)$/) { }
1571 100 T F if ($path =~ /^ \s* level \s* \( \s* ([0-9]+) \s* \) \s* $/ox) { }
1587 100 T F if ($path =~ /^\(\?([\^xism]*)(?:-[\^xism]*)?:(.*)\)$/) { }
1603 50 T F if ($DEBUG_HANDLER < 3) { }
1611 100 T F if ($DEBUG_HANDLER >= 1)
1615 50 T F if ($DEBUG_HANDLER and $path_to_check =~ /\S/)
1616 50 T F if $path_to_check =~ /\S/
1632 100 T F if ($2) { }
1633 100 T F if ($last_token_is_sep)
1637 100 T F if (defined $last_token_is_sep and not $last_token_is_sep)
1643 100 T F if ($last_token_is_sep)
1657 100 T F $xpath_original =~ m[^\s*/(?!/)] ? :
1666 100 T F $DEBUG_HANDLER >= 2 ? :
1668 100 T F if ($predicate)
1669 100 T F if ($DEBUG_HANDLER >= 2)
1671 100 T F if ($predicate =~ /^\s*$REG_NUMBER\s*$/)
1673 100 T F if ($DEBUG_HANDLER >= 2)
1679 100 T F if ($css_sel and $tag =~ /\./)
1684 100 T F if ($sep eq '/') { }
50 T F elsif ($sep eq '//') { }
1712 100 T F $DEBUG_HANDLER >= 2 ? :
1723 100 T F if ($anchored)
1725 50 T F $DEBUG_HANDLER >= 2 ? :
1729 100 T F if $DEBUG_HANDLER >= 2
1731 100 T F if $DEBUG_HANDLER >= 1
1733 100 T F if ($@)
1736 100 T F if $DEBUG_HANDLER >= 1
1737 100 T F if $DEBUG_HANDLER >= 1
1748 100 T F if ($full_tag =~ /^(.+)#(.+)$/) { }
1751 100 T F $css_sel ? :
1753 100 T F $tag && $tag ne '*' ? :
1754 100 T F defined $id ? :
1755 100 T F defined $class ? :
1773 100 T F if ($func or $str_regexp or $str_test_num or $str_test_alpha)
1775 100 T F if (defined $str) { }
100 T F elsif ($tag) { }
100 T F elsif ($att) { }
100 T F elsif ($bare_att) { }
100 T F elsif ($num_test and $num_test eq '=') { }
100 T F elsif ($alpha_test) { }
100 T F elsif ($func and $func =~ /^string/) { }
100 T F elsif ($str_regexp and $str_regexp =~ /string\(\s*($REG_TAG_NAME)\s*\)\s*($REG_MATCH)\s*($REG_REGEXP)/) { }
100 T F elsif ($str_test_alpha and $str_test_alpha =~ /string\(\s*($REG_TAG_NAME)\s*\)\s*($REG_COMP)\s*($REG_STRING)/) { }
50 T F elsif ($str_test_num and $str_test_num =~ /string\(\s*($REG_TAG_NAME)\s*\)\s*($REG_COMP)\s*($REG_NUMBER)/) { }
100 T F elsif ($and_or) { }
1777 100 T F $att =~ /^#/ ? :
1781 100 T F $bare_att =~ /^#/ ? :
1797 0 T F $2 eq '=' ? :
1800 100 T F $and_or eq 'and' ? :
1833 50 T F if $$handlers{'attcond_handlers'}
1914 100 T F if ref $$handlers{$path} and isa($$handlers{$path}, 'CODE')
1924 100 T F if (my $type = $$handler_data{'test_on_text'})
1939 100 T F if ($$t{'twig_parsing'})
1943 100 T F if ($XML::Twig::weakrefs)
1960 100 T F $@ ? :
1966 100 T F $@ ? :
1980 100 T F if $t->root
1997 100 T F unless my $current = $$t{'twig_current'}
1998 100 T F unless length $$t{'twig_stored_spaces'}
2001 100 T F unless ($$t{'twig_discard_all_spaces'})
2002 100 T F unless (defined $$t{'twig_space_policy'}{$current_gi})
2004 100 T F if ($$t{'twig_space_policy'}{$current_gi} or not $$t{'twig_stored_spaces'} =~ /\n/ or $$t{'twig_preserve_space'})
2029 100 T F if ($$t{'twig_in_pcdata'})
2036 100 T F if (my $func = $$t{'parse_start_tag'}) { }
50 T F elsif ($$t{'twig_entities_in_attribute'}) { }
2045 100 T F if ($$t{'twig_read_external_dtd'})
2048 100 T F if (my $filter = $$t{'twig_input_filter'})
2054 100 T F if ($$t{'twig_map_xmlns'})
2062 100 T F if $ns_decl
2063 100 T F if ($XML::Twig::weakrefs)
2066 100 T F if $parent
2070 100 T F if ($parent) { }
2072 100 T F if ($prev_sibling)
2074 100 T F if ($XML::Twig::weakrefs)
2077 100 T F if ($XML::Twig::weakrefs)
2078 100 T F unless ($$parent{'first_child'})
2079 100 T F if ($XML::Twig::weakrefs)
2085 50 T F if defined $$t{'twig_dtd_handler'}
2090 100 T F if ($$t{'twig_default_print'}) { }
100 T F elsif ($$t{'twig_roots'}) { }
2098 100 T F $p->recognized_string =~ m[/\s*>$]s ? :
2100 100 T F if $$t{'extra_data'}
2105 100 T F if (defined $id)
2107 100 T F if ($XML::Twig::weakrefs)
2111 100 T F if ($$t{'twig_starttag_handlers'})
2118 100 T F unless &$handler($t, $elt)
2120 100 T F if (my $all = $$t{'twig_starttag_handlers'}{'handlers'}{$ALL})
2125 100 T F if ($$t{'twig_ignore_elts_handlers'})
2128 100 T F if (@handlers)
2131 100 T F if ($$elt{'att'}{'xml:space'} and $$elt{'att'}{'xml:space'} eq 'preserve')
2144 100 T F if (not $$t{'twig_keep_original_prefix'} and my $mapped_prefix = $$t{'twig_map_xmlns'}{$uri})
2147 100 T F if ($new_prefix eq '#default') { }
2153 100 T F if ($$t{'twig_keep_original_prefix'}) { }
2158 100 T F if ($$ns_info{'mapped_prefix'})
2164 100 T F if ($att_name) { }
2167 100 T F if ($$ns_info{'mapped_prefix'})
2176 100 T F if $map_att
2182 100 T F if ($att_name) { }
2197 100 T F unless $$ns_info{'uri'}
2208 100 T F if ($p->expand_ns_prefix($prefix) eq $uri)
2220 100 T F if $$_{$ST_NS}
2232 100 T F if (not exists $value{$att} and exists $$attlist{$att}{'default'} and $$attlist{$att}{'default'} ne '#IMPLIED')
2254 100 T F if ($string =~ s[^<\s*($REG_TAG_NAME)\s*[\s>/]][]s) { }
2266 50 T F if ($elt)
2268 100 T F if ($XML::Twig::weakrefs)
2279 50 T F if ($$t{'twig_in_pcdata'} and my $text_handler = $$t{'TwigHandlers'}{$TEXT})
2280 0 T F if $_
2283 100 T F if ($$t{'twig_map_xmlns'})
2292 100 T F if ($$t{'twig_in_pcdata'})
2295 50 T F if $$elt{'parent'}
2303 100 T F if ($parent)
2306 100 T F if ($$parent{'twig_to_be_normalized'})
2309 100 T F if ($$t{'extra_data'})
2314 100 T F if ($$t{'twig_handlers'})
2318 100 T F if ($$t{'twig_tdh'}) { }
2319 100 T F if (@handlers)
2320 100 T F if (my $all = $$t{'twig_handlers'}{'handlers'}{$ALL})
2328 100 T F unless &$handler($t, $elt)
2331 100 T F if ($all)
2333 100 T F if (@handlers or $all)
2338 100 T F if ($$t{'twig_root_depth'} and $p->depth == $$t{'twig_root_depth'})
2339 100 T F if ($$t{'twig_default_print'}) { }
2342 50 T F if (!$p->depth == 1)
2343 100 T F if ($$t{'twig_keep_encoding'}) { }
2352 100 T F if ($$elt{'att'}{'xml:space'} and $$elt{'att'}{'xml:space'} eq 'preserve')
2361 50 T F if (@{$$t{'twig_handlers_to_trigger'};})
2366 50 T F unless &$handler($t, $handled_elt)
2383 100 T F if (my $found_path = &$trigger($$t{'_twig_context_stack'}))
2390 100 T F if (not @found_handlers and defined $$handlers{'handlers'}{$DEFAULT})
2393 100 T F if (@found_handlers and $$t{'twig_do_not_chain_handlers'})
2407 100 T F unless ($uri or $name =~ /^xml/)
2408 100 T F if ($uri) { }
2409 100 T F if (my $mapped_prefix = $$t{'twig_map_xmlns'}{$uri} || $DEFAULT_URI2NS{$uri}) { }
2413 100 T F if ($prefix eq '#default')
2414 100 T F $prefix ? :
2428 100 T F if ($$t{'twig_keep_encoding'})
2429 100 T F if (not $$t{'twig_in_cdata'}) { }
2434 100 T F if (length $string < 1024) { }
2445 100 T F if ($$t{'twig_input_filter'})
2446 100 T F if ($$t{'twig_char_handler'})
2450 100 T F if ($$t{'twig_in_cdata'}) { }
100 T F elsif ($$t{'twig_in_pcdata'}) { }
2456 100 T F if ($$t{'extra_data'})
2465 100 T F if ($string =~ /\A\s*\Z/s) { }
2467 100 T F if ($$t{'extra_data'}) { }
2482 100 T F if ($$t{'extra_data'})
2501 100 T F if ($$t{'twig_in_pcdata'}) { }
2503 100 T F if ($XML::Twig::weakrefs)
2506 100 T F if ($XML::Twig::weakrefs)
2507 100 T F if ($XML::Twig::weakrefs)
2512 100 T F if ($t->_space_policy($XML::Twig::index2gi[$$twig_current{'gi'}]) and $$t{'twig_stored_spaces'})
2517 50 T F if ($XML::Twig::weakrefs)
2518 100 T F if (my $prev_sibling = $$twig_current{'last_child'}) { }
2519 50 T F if ($XML::Twig::weakrefs)
2524 50 T F if ($XML::Twig::weakrefs)
2531 100 T F if ($$t{'extra_data'})
2550 100 T F if ($$t{'twig_handlers'})
2554 100 T F unless &$handler($t, $elt)
2571 50 T F unless &$handler($t, $pi)
100 T F if ($handler)
2576 100 T F if (my $handler = $$t{'twig_handlers'}{'pi_handlers'}{$target})
2578 100 T F if (my $handler = $$t{'twig_handlers'}{'pi_handlers'}{''})
2580 100 T F defined $data && $data ne '' ? :
2585 100 T F if (my $handler = $$t{'twig_handlers'}{'handlers'}{$COMMENT})
2591 100 T F if (my $handler = $$t{'twig_handlers'}{'handlers'}{$COMMENT})
2593 100 T F if (not defined $comment or $comment eq '')
2606 100 T F if ($$t{'twig_keep_encoding'})
2620 100 T F if ($$t{'twig_keep_encoding'})
2634 100 T F if ($$t{'twig_input_filter'})
2638 100 T F if ($keep) { }
100 T F elsif ($process) { }
2640 100 T F if ($$t{'twig_stored_spaces'})
2655 100 T F if ($$t{'extra_data'})
2660 100 T F if (not $t->root) { }
100 T F elsif ($$t{'twig_in_pcdata'}) { }
100 T F elsif ($twig_current) { }
2670 100 T F if ($t->_space_policy($XML::Twig::index2gi[$$twig_current{'gi'}]) and $$t{'twig_stored_spaces'})
2679 100 T F if ($twig_current)
2705 100 T F $p->isa('XML::Twig') ? :
2708 100 T F if ($$t{'extra_data'})
2711 100 T F if ($$t{'twig_stored_spaces'})
2716 100 T F if $$t{'twig_tdh'}
2718 100 T F if $$t{'twig_original_selected_fh'}
2720 100 T F if (exists $$t{'twig_autoflush_data'})
2722 100 T F if $$t{'twig_autoflush_data'}{'fh'}
2723 100 T F if $$t{'twig_autoflush_data'}{'args'}
2726 50 T F if $t->root
2743 100 T F if (exists $$t{'twig_alt_elt_class'}) { }
2751 100 T F if ($prev_sibling) { }
2753 100 T F if ($XML::Twig::weakrefs)
2758 100 T F if ($XML::Twig::weakrefs)
2759 100 T F if ($XML::Twig::weakrefs)
2767 100 T F if $$t{'twig_discard_spaces'}
2768 100 T F if $$t{'twig_keep_spaces'}
2769 100 T F if $$t{'twig_keep_spaces_in'} and $$t{'twig_keep_spaces_in'}{$gi}
2771 100 T F if $$t{'twig_discard_spaces_in'} and $$t{'twig_discard_spaces_in'}{$gi}
2786 100 T F if ($sysid)
2787 100 T F if ($ndata) { }
2788 100 T F unless (-f _based_filename($sysid, $p->base))
2791 100 T F if ($$t{'twig_expand_external_ents'})
2793 100 T F unless (defined $val)
2794 100 T F if ($$t{'twig_extern_ent_nofail'}) { }
2804 100 T F if ($missing_entity)
2807 50 T F if ($entity_list)
2809 50 T F if ($parser_version > 2.27)
2813 100 T F if ($$t{'twig_keep_encoding'})
2814 50 T F if (defined $$ent{'val'} and not $ent_decl =~ /["']/)
2816 0 T F $val =~ /"/ ? :
2821 50 T F unless $$t{'twig_doctype'}{'internal'} =~ /<!ENTITY\s+$name\s+/
2833 100 T F if ($$t{'twig_no_expand'})
2834 50 T F $$t{'twig_keep_encoding'} ? :
2839 100 T F unless (defined $ent_content)
2844 100 T F if ($$t{'twig_extern_ent_nofail'}) { }
2879 50 T F if ($parser_version > 2.27) { }
2895 100 T F if ($$t{'twig_read_external_dtd'} and $sysid)
2904 50 T F if $t_dtd->entity_list
2920 50 T F if ($parser_version > 2.27 and $$t{'twig_doctype'}{'internal'} =~ /(^|>)\s*$/)
2921 50 T F $XML::Twig::Elt::keep_encoding ? :
2922 50 T F unless ($text)
2941 50 T F if ($parser_version > 2.27 and $$t{'twig_doctype'}{'internal'} =~ /(^|>)\s*$/)
2942 50 T F $XML::Twig::Elt::keep_encoding ? :
2943 50 T F unless ($text)
2947 100 T F if $fixed
2948 50 T F if defined $default
2950 100 T F if ($$t{'twig_dtd'}{'att'}{$gi}) { }
2963 50 T F if defined $default
2978 100 T F if (not $$t{'twig_current'} and $$t{'twig_root'} and $string =~ /^\s+$/m)
2981 100 T F if ($string =~ /^&([^;]*);$/)
2983 50 T F if ($p->original_string =~ /^</ and $p->original_string =~ />$/) { }
2985 0 T F if $$t{'twig_do_not_escape_amp_in_atts'}
2989 100 T F if ($$t{'twig_keep_encoding'}) { }
3013 100 T F if ($$t{'twig_in_pcdata'}) { }
3016 100 T F if ($XML::Twig::weakrefs)
3019 100 T F if ($XML::Twig::weakrefs)
3020 100 T F if ($XML::Twig::weakrefs)
3029 100 T F if ($XML::Twig::weakrefs)
3030 100 T F if (my $prev_sibling = $$twig_current{'last_child'}) { }
3031 100 T F if ($XML::Twig::weakrefs)
3035 50 T F if ($twig_current)
3036 100 T F if ($XML::Twig::weakrefs)
50 T F if ($twig_current)
3052 100 T F unless $$t{'twig_xmldecl'} or $$t{'output_encoding'}
3055 100 T F if ($decl) { }
3062 100 T F if ($$t{'output_encoding'}) { }
100 T F elsif ($$decl{'encoding'}) { }
3071 100 T F if (defined $$decl{'standalone'})
3073 100 T F $$decl{'standalone'} ? :
3085 100 T F $output_filter ? :
3090 100 T F unless defined $$t{'twig_doctype'}
3092 50 T F if defined $name
3093 100 T F if defined $system
3094 100 T F if defined $public
3095 100 T F if defined $internal
3100 100 T F unless my $doctype = $$t{'twig_doctype'}
3106 100 T F unless my $doctype = $$t{'twig_doctype'}
3112 100 T F unless my $doctype = $$t{'twig_doctype'}
3118 100 T F unless my $doctype = $$t{'twig_doctype'}
3132 100 T F if $elt
3159 50 T F isa($_[0], 'GLOB') || isa($_[0], 'IO::Scalar') ? :
3167 100 T F if ($$t{'no_prolog'})
3169 100 T F defined $$t{'no_dtd_output'} ? :
50 T F $$t{'no_prolog'} ? :
3182 100 T F if ($doctype)
3183 50 T F if $$doctype{'name'}
3184 100 T F if $$doctype{'pub'}
3185 100 T F if $$doctype{'sysid'} and not $$doctype{'pub'}
3186 100 T F if $$doctype{'sysid'}
3189 100 T F if ($update_dtd) { }
100 T F elsif ($doctype) { }
3190 100 T F if ($doctype) { }
100 T F elsif (not $$t{'twig_dtd'} and keys %{$t->entity_list;}) { }
3193 100 T F if ($internal)
3198 50 T F if $t->entity_list
3199 100 T F if ($internal)
3209 100 T F if (my $internal = $$doctype{'internal'})
3221 100 T F if ($doctype_text) { }
3228 50 T F $output_filter ? :
3255 50 T F $$t{'twig_keep_encoding'} ? :
3256 100 T F unless open $out_fh, $mode, $filename
3267 50 T F -f $filename ? :
3268 50 T F unless _use('File::Temp')
3272 50 T F unless rename $tmpfilename, $filename
3280 100 T F isa($_[0], 'GLOB') || isa($_[0], 'IO::Scalar') ? :
3283 100 T F defined $fh ? :
3284 100 T F defined $args{'PrettyPrint'} ? :
3285 100 T F defined $args{'EmptyTags'} ? :
3289 100 T F if ($perl_version > 5.006 and not $$t{'twig_keep_encoding'})
3290 50 T F if (grep /useperlio=define/, `$^X -V`)
3302 100 T F if defined $old_pretty
3303 100 T F if defined $old_empty_tag
3304 100 T F if ($fh)
3313 50 T F if $$t{'twig_tdh'}
3315 100 T F if $$t{'twig_completely_flushed'}
3317 100 T F isa($_[0], 'GLOB') || isa($_[0], 'IO::Scalar') ? :
3318 100 T F defined $fh ? :
3319 100 T F ref $_[0] ? :
3323 100 T F if (defined $args{'PrettyPrint'})
3329 100 T F if ($args{'EmptyTags'})
3338 100 T F if ($up_to) { }
100 T F elsif ($$t{'twig_current'}) { }
3350 100 T F unless ($elt->_flushed)
3352 100 T F if ($$t{'twig_autoflush'})
3354 100 T F if $fh
3355 100 T F if @_
3363 100 T F if ($last_elt and $last_elt->in($elt)) { }
3365 100 T F unless ($elt->_flushed)
3377 100 T F if $last_elt and $elt == $last_elt
3382 100 T F if ($flush_trailing_data)
3387 100 T F if defined $old_select
3388 100 T F if defined $old_pretty
3389 100 T F if defined $old_empty_tag_style
3391 100 T F if (my $ids = $$t{'twig_id_list'})
3393 100 T F unless (defined $elt)
3407 100 T F if (isa($_[0], 'GLOB') or isa($_[0], 'IO::Scalar')) { }
3424 100 T F if (defined $args{'PrettyPrint'})
3430 100 T F if (defined $args{'EmptyTags'})
3441 100 T F if ($$t{'twig_keep_spaces'} and $$t{'trailing_spaces'})
3443 100 T F if defined $old_pretty
3444 100 T F if defined $old_empty_tag_style
3458 50 T F if $$t{'twig_tdh'}
3462 100 T F if ($up_to) { }
100 T F elsif ($$t{'twig_current'}) { }
3473 100 T F if ($last_elt and $last_elt->in($elt)) { }
3481 100 T F if $last_elt and $elt == $last_elt
3486 100 T F if (my $ids = $$t{'twig_id_list'})
3487 100 T F unless (defined $elt)
3510 100 T F ref $twig_or_class ? :
3516 100 T F if $elt_class->can($att) and not $accessor{$att}
3519 100 T F unless ($accessor{$att})
3524 100 T F if (@_)
3538 50 T F ref $twig_or_class ? :
3544 100 T F ref $_[0] && isa($_[0], 'HASH') ? :
3548 100 T F if ($elt_class->can($alias) and not $accessor{$alias})
3551 100 T F unless ($accessor{$alias})
3555 100 T F wantarray ? :
3568 50 T F ref $twig_or_class ? :
3572 100 T F ref $_[0] && isa($_[0], 'HASH') ? :
3577 100 T F if ($elt_class->can($alias) and not $accessor{$alias})
3579 100 T F unless ($accessor{$alias})
3595 100 T F if $root->passes($cond)
3607 100 T F if $t->root->matches($cond)
3613 100 T F if (isa($_[0], 'ARRAY')) { }
3626 100 T F unless @unique and $unique[-1] == $current
3632 100 T F if (isa($_[0], 'ARRAY')) { }
3642 100 T F if (isa($_[0], 'ARRAY')) { }
3659 100 T F defined $index ? :
3667 100 T F if (not $cond && !$root->passes($cond)) { }
3686 100 T F if ($root->passes($cond)) { }
3720 100 T F unless $index = $XML::Twig::gi2index{$old_gi}
3732 100 T F unless my $doctype = $$t{'twig_doctype'}
3739 100 T F if ($$dtd{'att'}{$gi})
3744 100 T F if ($$attlist{$att}{'fixed'}) { }
3753 50 T F if $t->entity_list
3761 100 T F isa($_[0], 'GLOB') || isa($_[0], 'IO::Scalar') ? :
3762 100 T F if ($fh) { }
3781 100 T F unless $$t{'twig_parsing'}
3789 100 T F if ($$t{'twig_map_xmlns'}) { }
3804 100 T F if (not defined $fh) { }
50 T F elsif (defined $fh) { }
3808 50 T F if $old_fh
3812 100 T F if ($$t{'twig_keep_encoding'}) { }
3830 100 T F if (not $input_filter or isa($input_filter, 'CODE')) { }
50 T F elsif ($input_filter eq 'latin1') { }
50 T F elsif ($XML::Twig::filter{$input_filter}) { }
3890 100 T F if ($$t{'twig_root'} and isa($$t{'twig_root'}, 'XML::Twig::Elt'))
3895 100 T F if $$t{'twig_root'}
3915 50 T F if ($string eq '<!DOCTYPE') { }
3931 50 T F if ($expat_1_95_2 and $p->recognized_string eq '[' and not $$p{'twig'}{'expat_1_95_2_seen_bracket'}) { }
3936 50 T F if ($$p{'twig'}{'twig_right_after_root'}) { }
3937 0 T F if $s =~ /\S/
3959 50 T F if ($string eq '<!DOCTYPE') { }
3982 50 T F if ($name)
3986 50 T F if $name
3987 50 T F if $pubid
3988 100 T F if $sysid and not $pubid
3989 100 T F if $sysid
3990 100 T F if $internal and not $expat_1_95_2
3991 100 T F unless $internal or $expat_1_95_2
4002 50 T F if ($name)
4006 50 T F if $name
4007 50 T F if $pubid
4008 100 T F if $sysid and not $pubid
4009 100 T F if $sysid
4010 100 T F if $internal
4011 100 T F unless $internal or $expat_1_95_2
4045 100 T F unless ($p->depth == 0)
4046 100 T F if ($$t{'twig_map_xmlns'})
4050 50 T F if $ns_decl
4054 100 T F if (_handler($t, $$t{'twig_roots'}, $gi))
4063 100 T F $$t{'twig_keep_encoding'} ? :
100 T F $$t{'twig_default_print'} ? :
4067 100 T F if ($p->depth == 0) { }
100 T F elsif ($$t{'twig_starttag_handlers'}) { }
4071 100 T F if $tag
4083 50 T F unless $last_handler_res
4087 50 T F if $tag and !@handlers || $last_handler_res
4093 100 T F if $tag
4104 100 T F $$t{'twig_keep_encoding'} ? :
100 T F $$t{'twig_default_print'} ? :
4109 100 T F if ($$t{'twig_endtag_handlers'})
4123 100 T F if defined $tag
4125 100 T F if ($p->depth == 0)
4139 100 T F $$t{'twig_keep_encoding'} ? :
100 T F $$t{'twig_default_print'} ? :
4144 100 T F if (my $handler = $$t{'twig_handlers'}{'pi_handlers'}{$target} || $$t{'twig_handlers'}{'pi_handlers'}{''}) { }
4158 50 T F if defined $pi
4168 100 T F $$t{'twig_keep_encoding'} ? :
4170 100 T F if ($action eq 'print') { }
4173 100 T F if ($action eq 'string') { }
50 T F elsif (ref $action and ref $action eq 'SCALAR') { }
4194 100 T F unless $action eq 'discard'
4205 100 T F unless $action eq 'discard'
4209 100 T F unless ($$t{'twig_ignore_level'})
4223 100 T F if ($$t{'twig_endtag_handlers'})
4241 100 T F unless ($elt and ref $elt and isa($elt, 'XML::Twig::Elt'))
4247 100 T F unless ($elt == $current or $$current{'last_child'} and $elt == $$current{'last_child'} or $current->in($elt))
4250 100 T F $current == $elt ? :
4255 100 T F unless ($action eq 'print' or $action eq 'string' or ref $action and ref $action eq 'SCALAR')
4263 100 T F $$t{'twig_keep_encoding'} ? :
4267 100 T F if ($action ne 'discard')
4268 100 T F if ($action eq 'print') { }
4272 100 T F if ($action eq 'string') { }
50 T F elsif (ref $action and ref $action eq 'SCALAR') { }
4273 100 T F unless (exists $$t{'twig_buffered_string'})
4292 100 T F if ($$elt_in_stack{$ST_ELT} and $elt == $$elt_in_stack{$ST_ELT})
4303 100 T F if ($output_fh and not $$t{'twig_output_fh_selected'})
4315 100 T F unless $$t{'twig_output_fh'}
4324 100 T F if $_[0]{'twig_xmldecl'}
4329 100 T F unless $t->xml_version
4341 100 T F if ($encoding and not $encoding =~ /^utf-?8$/i or $$t{'twig_keep_encoding'} or $output_filter)
4349 100 T F if $_[0]{'twig_xmldecl'}
4359 100 T F if $_[0]{'twig_xmldecl'}
4364 100 T F unless $t->xml_version
4373 100 T F if defined $_[0]{'twig_parser'}
4380 100 T F if defined $_[0]{'twig_parser'}
4390 100 T F if (my $start_document = $handler->can('start_document'))
4395 50 T F if ($t->root)
4396 50 T F if (my $end_document = $handler->can('end_document'))
4418 100 T F if ($$t{'twig_current'}) { }
4424 100 T F unless ($elt->_flushed)
4426 50 T F if (my $start_document = $handler->can('start_document'))
4434 100 T F if ($last_elt and $last_elt->in($elt)) { }
4436 100 T F unless ($elt->_flushed)
4438 50 T F if (my $start_element = $handler->can('start_element'))
4439 50 T F if (my $tag_data = &$start_tag_data($elt))
4451 100 T F if $last_elt and $elt == $last_elt
4455 100 T F if (not $$t{'twig_parsing'})
4456 50 T F if (my $end_document = $handler->can('end_document'))
4475 100 T F if (my $xml_decl = $handler->can('xml_decl'))
4482 100 T F unless $doctype
4488 100 T F if (my $start_dtd = $handler->can('start_dtd'))
4493 100 T F if (my $end_dtd = $handler->can('end_dtd'))
4501 50 T F if (_use('Encode')) { }
0 T F elsif (_use('Text::Iconv')) { }
0 T F elsif (_use('Unicode::Map8') and _use('Unicode::String')) { }
4515 50 T F if (_use('Encode')) { }
0 T F elsif (_use('Text::Iconv')) { }
0 T F elsif (_use('Unicode::Map8') and _use('Unicode::String')) { }
4539 50 T F unless _use('HTML::Entities')
4545 50 T F if ($perl_version < 5.008) { }
4558 50 T F if ($perl_version < 5.008) { }
4576 50 T F if ($len == 2) { }
0 T F elsif ($len == 3) { }
0 T F elsif ($len == 4) { }
0 T F elsif ($len == 1) { }
4594 100 T F $hex ? :
4600 50 T F $_[1] ? :
4601 50 T F unless _use('Unicode::Map8')
4602 50 T F unless _use('Unicode::String')
4604 50 T F unless $cnv = 'Unicode::Map8'->new($enc)
4612 50 T F unless ($sub)
4617 50 T F $_[1] ? :
4618 50 T F unless _use('Text::Iconv')
4619 50 T F unless $cnv = 'Text::Iconv'->new('utf8', $enc)
50 T F unless $cnv = 'Text::Iconv'->new('utf8', $enc)
4627 100 T F unless ($sub)
4628 50 T F if ($@ =~ /^Unsupported conversion: Invalid argument/) { }
4638 50 T F $_[1] ? :
4640 50 T F unless $sub
4648 100 T F wantarray ? :
4651 100 T F if not $XML::Twig::weakrefs
4658 100 T F if ($t->root)
4692 100 T F unless $ents_to_add and %$ents_to_add
4713 100 T F if (isa(ref $_[0], 'XML::Twig::Entity')) { }
4729 50 T F defined $fh ? :
4734 50 T F if (isa($ent, 'XML::Twig::Entity'))
4736 50 T F if defined $old_select
4772 100 T F if defined $val
4773 100 T F if defined $sysid
4774 100 T F if defined $pubid
4775 100 T F if defined $ndata
4776 100 T F if defined $param
4785 100 T F defined $_[0]{'sysid'} ? :
4786 50 T F defined $_[0]{'pubid'} ? :
4787 100 T F defined $_[0]{'ndata'} ? :
4788 100 T F defined $_[0]{'param'} ? :
4794 50 T F if ($fh) { }
4806 100 T F unless $$ent{'name'}
4810 100 T F if $$ent{'param'}
4813 100 T F if (defined $$ent{'val'} and not defined $$ent{'sysid'} and not defined $$ent{'pubid'}) { }
50 T F elsif (defined $$ent{'sysid'}) { }
4817 100 T F if $$ent{'pubid'}
4818 100 T F unless $$ent{'pubid'}
4820 100 T F if $$ent{'ndata'}
4826 50 T F $_[0] =~ /"/ ? :
4914 50 T F if (eval 'require Scalar::Util' and defined &Scalar::Util::weaken) { }
0 T F elsif (eval 'require WeakRef') { }
4933 100 T F unless @_
4935 100 T F if (@_ == 1 and $_[0] =~ /^\s*</)
4939 100 T F unless $$elt{'gi'} = $XML::Twig::gi2index{$gi}
4942 100 T F ref $_[0] eq 'HASH' ? :
4944 100 T F if ($atts and defined $$atts{$CDATA})
4951 100 T F if ($gi eq $PCDATA) { }
100 T F elsif ($gi eq $ENT) { }
100 T F elsif ($gi eq $CDATA) { }
100 T F elsif ($gi eq $COMMENT) { }
100 T F elsif ($gi eq $PI) { }
4952 100 T F if (grep {ref $_;} @_)
4958 100 T F if (grep {ref $_;} @_)
4962 100 T F if (grep {ref $_;} @_)
4966 100 T F if (grep {ref $_;} @_)
4971 100 T F if (@_) { }
4977 100 T F if ($atts)
4979 100 T F if (defined $$atts{$ASIS})
4980 100 T F if (defined $$atts{$EMPTY})
4981 100 T F if (keys %$atts)
4982 100 T F if $$atts{$ID}
4994 50 T F unless $$elt{'gi'} = $XML::Twig::gi2index{$PCDATA}
5006 100 T F if (ref $class)
5015 100 T F if ($$t{'twig_id_list'})
5044 100 T F if ($elt->tag eq 'head') { }
100 T F elsif ($elt->tag ne 'html') { }
5061 100 T F unless (defined $XML::Twig::gi2index{$gi})
5085 100 T F if ($qname =~ /^([^:]*):/) { }
5101 100 T F defined $_[0] ? :
5102 100 T F $prefix ? :
5113 50 T F $prefix eq '#default' ? :
5114 50 T F unless ($$root{'att'}{$prefix_att})
5125 50 T F $att =~ /^xmlns:(.*)$/ ? :
50 T F $att eq 'xmlns' ? :
5129 50 T F unless (exists $$map{$prefix})
5138 100 T F $prefix ? :
5147 100 T F if ($elt->_ns_prefix and $elt->namespace eq $uri)
5150 50 T F if $_ =~ /xmlns(:|$)/
5169 100 T F if $gi_nb >= $XML::Twig::SPECIAL_GI
5175 100 T F if ($_[0]{'gi'} >= $XML::Twig::SPECIAL_GI) { }
5217 100 T F defined $_[1] ? :
5220 100 T F if $_[0]{'empty'}
5228 100 T F if (exists $$descendant{'cdata'})
5229 50 T F unless $$descendant{'gi'} = $XML::Twig::gi2index{$PCDATA}
5240 50 T F if $$descendant{'asis'}
5251 100 T F unless $curr_elt
5258 100 T F if ($$elt{'extra_data_in_pcdata'})
5284 100 T F if ($$elt{'extra_data_before_end_tag'}) { }
5300 100 T F if ((my $offset = index($modified, $initial)) != -1) { }
100 T F elsif (($offset = index($initial, $modified)) != -1) { }
5308 100 T F if $$_{'offset'} >= 0
5311 100 T F unless _match_extra_data_words($elt, $initial, $modified) or _match_extra_data_chars($elt, $initial, $modified)
5338 100 T F if (@$initial <= @$modified) { }
5341 100 T F if ($ok)
5356 100 T F if ($ok)
5370 50 T F if ($$cpi{'offset'} < $prev_pos)
5387 100 T F if ($s_word ne $l_word)
5392 100 T F if (not @$long and $s_word ne $l_word)
5437 100 T F unless ($$elt{'gi'} == $XML::Twig::gi2index{$PI})
5439 50 T F unless $$elt{'gi'} = $XML::Twig::gi2index{$PI}
5452 100 T F if (defined $data and $data ne '')
5459 100 T F unless ($$elt{'gi'} == $XML::Twig::gi2index{$COMMENT})
5461 50 T F unless $$elt{'gi'} = $XML::Twig::gi2index{$COMMENT}
5484 100 T F unless ($$elt{'gi'} == $XML::Twig::gi2index{$CDATA})
5506 100 T F unless $elt->is_elt
5508 100 T F if $child->is_elt
5516 100 T F unless $child->is($exp)
5522 100 T F unless my $child = $$elt{'first_child'}
5523 100 T F unless $child->passes($exp)
5524 100 T F if $$child{'next_sibling'}
5578 100 T F $cond =~ s/^\s*!// ? :
5580 100 T F if (ref $cond eq 'CODE')
5582 100 T F if (ref $cond eq 'Regexp') { }
5589 100 T F if ($cond =~ s/$ELT$SEP//) { }
100 T F elsif ($cond =~ s/$TEXT$SEP//) { }
100 T F elsif ($cond =~ s/^\s*($REG_TAG_PART)$SEP//) { }
100 T F elsif ($cond =~ s/^\s*($REG_REGEXP)$SEP//) { }
100 T F elsif ($cond =~ s/^\s*($REG_TAG_PART)?\s* # $1 \[\s*(-?)\s*(\d+)\s*\] # [$2] $SEP//ox) { }
100 T F elsif ($cond =~ s/^\s*($REG_TAG_PART?)\s*($REG_PREDICATE)$SEP//) { }
100 T F elsif ($cond =~ s/^\s*($REG_NAKED_PREDICATE)$SEP//) { }
5604 100 T F $neg ? :
5605 100 T F if ($gi and $gi ne '*') { }
5620 100 T F @tests > 1 ? :
5628 100 T F if ($@)
5638 100 T F if ($index)
5643 100 T F if ($gi and $gi ne '*') { }
5647 100 T F if ($index) { }
5662 100 T F if ($class)
5667 100 T F if ($id)
5686 100 T F if (defined $string) { }
100 T F elsif ($att) { }
100 T F elsif ($bare_att) { }
100 T F elsif ($num_test and $num_test eq '=') { }
100 T F elsif ($alpha_test) { }
100 T F elsif ($func and $func =~ /^(?:string|text)/) { }
100 T F elsif ($string_regexp and $string_regexp =~ /(?:string|text)\(\s*($REG_TAG_NAME)\s*\)\s*($REG_MATCH)\s*($REG_REGEXP)/) { }
100 T F elsif ($string_eq and $string_eq =~ /(?:string|text)\(\s*($REG_TAG_NAME)\s*\)\s*(!?=)\s*($REG_VALUE)/) { }
50 T F elsif ($string_test and $string_test =~ /(?:string|text)\(\s*($REG_TAG_NAME)\s*\)\s*([<>]=?)\s*($REG_VALUE)/) { }
100 T F elsif ($and_or) { }
5699 100 T F $and_or eq 'and' ? :
5721 100 T F if ($op eq '=') { }
100 T F elsif ($op eq '!=') { }
5728 100 T F unless $cond
5736 50 T F if ($XML::Twig::weakrefs)
5774 100 T F if ($child) { }
5777 100 T F if ($cond =~ /^\s*($REG_TAG_NAME)/) { }
5789 50 T F if ($XML::Twig::weakrefs)
5805 50 T F if ($XML::Twig::weakrefs)
5842 100 T F unless $new_class
5844 50 T F $class ? :
5851 50 T F unless $class_to_remove
5853 50 T F $class ? :
5869 100 T F unless $elt->tag eq 'span' and $elt->class
5875 100 T F unless $elt->tag eq 'div' and $elt->class
5882 50 T F unless defined $elt_class
5883 100 T F $elt->class =~ /(?:^|\s)\Q$class\E(?:\s|$)/ ? :
5892 100 T F if keep_atts_order()
5893 100 T F ref($_[0] || '') eq 'HASH' || isa($_[0] || '', 'HASH') ? :
5895 100 T F if (exists $atts{$ID})
5907 100 T F if ($_[0] and ref $_[0] and not $_[1])
5910 100 T F unless ($$elt{'att'})
5912 100 T F if keep_atts_order()
5918 100 T F if ($att eq $ID)
5947 100 T F unless defined $value
5956 50 T F if ($att ne lc $att)
5967 100 T F if exists $$elt{'att'}{$ID}
5978 100 T F if ($XML::Twig::weakrefs)
5994 100 T F if (defined $$elt{'att'}{$ID}) { }
5997 50 T F $_[0] && ref $_[0] && isa($_[0], 'CODE') ? :
6009 100 T F unless (exists $$elt{'att'}{$ID})
6015 100 T F unless ($t)
6016 50 T F if (exists $$t{'twig_id_list'}{$id})
6062 100 T F if $child->passes($cond)
6071 100 T F wantarray ? :
6078 100 T F wantarray ? :
6085 100 T F unless $child->passes($cond)
6095 100 T F if $elt->passes($cond)
6104 100 T F if $elt->passes($cond)
6113 100 T F $include_self ? :
6125 100 T F if (defined $$elt{'att'}{$att} and !%tags || $tags{$XML::Twig::index2gi[$$elt{'gi'}]})
6139 100 T F if (defined $$elt{'att'}{$att} and !%tags || $tags{$XML::Twig::index2gi[$$elt{'gi'}]})
6151 100 T F if $elt->namespace('')
6173 100 T F if ref $_[0] and isa($_[0], 'XML::Twig::Elt')
6179 100 T F if ($cond)
6180 100 T F unless (defined($ind = $XML::Twig::gi2index{$cond}))
6185 100 T F if ($next_elt = $$elt{'first_child'}) { }
100 T F elsif ($next_elt = $$elt{'next_sibling'}) { }
6192 100 T F if $subtree_root and $elt == $subtree_root
6200 100 T F if $subtree_root and $elt == $subtree_root
6205 100 T F if $subtree_root and $subtree_root == $next_elt
6208 100 T F if $subtree_root and $subtree_root == $next_elt
6229 100 T F if (not $cond or $last_descendant->matches($cond)) { }
6250 100 T F if (defined $_[0] and (ref $_[0] and isa($_[0], 'XML::Twig::Elt')))
6252 100 T F if $elt == $subtree_root
6258 100 T F if $elt == $subtree_root
6259 100 T F if ($prev_elt = $$elt{'prev_sibling'}) { }
6275 100 T F $elt ? :
6281 100 T F if not $cond or $elt->matches($cond)
6287 100 T F unless ($cond)
6289 100 T F if ($following) { }
6303 100 T F $elt ? :
6309 100 T F if not $cond or $elt->matches($cond)
6315 100 T F unless ($cond)
6317 100 T F if ($preceding) { }
6330 100 T F $cond ? :
6344 100 T F if (ref $ancestor and isa($ancestor, 'XML::Twig::Elt')) { }
6346 100 T F if $elt == $ancestor
6350 100 T F if $elt->matches($ancestor)
6357 100 T F unless my $dest = $elt->first_child(@_)
6368 100 T F unless my $dest = $elt->first_child(@_)
6374 100 T F unless my $dest = $$elt{'first_child'}
6380 100 T F unless my $dest = $elt->last_child(@_)
6386 100 T F unless my $dest = $elt->last_child(@_)
6392 100 T F unless my $dest = $$elt{'last_child'}
6398 100 T F unless my $dest = $elt->child(@_)
6404 100 T F unless my $dest = $elt->child(@_)
6411 100 T F unless my $dest = $elt->child($nb)
6417 100 T F unless my $dest = $elt->_prev_sibling(@_)
6423 100 T F unless my $dest = $elt->_prev_sibling(@_)
6429 100 T F unless my $dest = $$elt{'prev_sibling'}
6435 100 T F unless my $dest = $elt->next_sibling(@_)
6441 100 T F unless my $dest = $elt->next_sibling(@_)
6447 100 T F unless my $dest = $$elt{'next_sibling'}
6453 100 T F unless my $dest = $elt->prev_elt(@_)
6459 100 T F unless my $dest = $elt->prev_elt(@_)
6465 100 T F unless my $dest = $elt->prev_elt
6471 100 T F unless my $dest = $elt->next_elt(@_)
6477 100 T F unless my $dest = $elt->next_elt(@_)
6483 100 T F unless my $dest = $elt->next_elt
6489 100 T F unless my $dest = $elt->parent(@_)
6495 100 T F unless my $dest = $elt->parent(@_)
6501 100 T F unless my $dest = $$elt{'parent'}
6507 100 T F unless my $parent = $$elt{'parent'}
6508 100 T F unless my $first_child = $parent->first_child(@_)
6509 100 T F $first_child == $elt ? :
6514 100 T F unless my $parent = $$elt{'parent'}
6515 100 T F unless my $last_child = $parent->last_child(@_)
6516 100 T F $last_child == $elt ? :
6526 100 T F if not $cond or $elt->matches($cond)
6533 100 T F unless $level
6536 100 T F unless $elt = $$elt{'parent'}
6537 100 T F if ($elt->matches($cond))
6545 100 T F $include_self ? :
6551 100 T F if ($next_elt = $$elt{'first_child'}) { }
100 T F elsif ($next_elt = $$elt{'next_sibling'}) { }
6558 100 T F if $elt == $subtree_root
6565 100 T F if $elt == $subtree_root
6570 100 T F if $subtree_root == $next_elt
6573 100 T F if $subtree_root == $next_elt
6592 100 T F if (not $cond or defined($ind = $XML::Twig::gi2index{$cond})) { }
6597 100 T F if ($next_elt = $$elt{'first_child'}) { }
100 T F elsif ($next_elt = $$elt{'next_sibling'}) { }
6604 50 T F if $subtree_root and $elt == $subtree_root
6611 100 T F if $subtree_root and $elt == $subtree_root
6616 100 T F if $subtree_root and $subtree_root == $next_elt
6619 100 T F if $subtree_root and $subtree_root == $next_elt
6623 100 T F if not $cond or $$elt{'gi'} eq $ind
6638 100 T F $elt->passes($cond) ? :
6646 100 T F if ($nb > 0) { }
100 T F elsif ($nb < 0) { }
6648 100 T F unless $elt = $elt->next_sibling(@_)
6652 100 T F unless $elt = $elt->prev_sibling(@_)
6661 100 T F $elt ? :
6668 100 T F if ($nb >= 0) { }
6669 100 T F unless $elt = $elt->first_child(@_)
6671 100 T F unless $elt = $elt->next_sibling(@_)
6674 100 T F unless $elt = $elt->last_child(@_)
6676 100 T F unless $elt = $elt->prev_sibling(@_)
6696 100 T F if $_[0] and not $elt->matches(@_)
6735 100 T F if ($xpath_exp =~ s[^/][]) { }
100 T F elsif ($xpath_exp =~ s[^\./][]) { }
6753 50 T F if ($axis and not $gi)
6757 100 T F if ($sub_exp eq '..') { }
100 T F elsif ($sub_exp =~ /^\.(.*)$/s) { }
6758 50 T F if $wildcard
6767 100 T F unless ($axis)
6768 100 T F $wildcard ? :
6769 100 T F if (not $gi or $gi eq '*')
6773 100 T F if ($predicates and $predicates =~ /^\s*\[\s*((-\s*)?\d+)\s*\]\s*$/) { }
100 T F elsif ($predicates and $predicates =~ /^\s*\[\s*last\s*\(\s*\)\s*\]\s*$/) { }
6776 100 T F if $offset > 0
6777 50 T F $axis eq 'child' ? :
50 T F $axis eq 'descendant' ? :
6785 50 T F if $wildcard
6802 100 T F if ($pred =~ /^(-?\s*\d+)$/) { }
6804 100 T F if ($step =~ /^\s*grep(.*) (\$_->\w+\(\s*'[^']*'\s*\))/) { }
6807 50 T F if ($pos > 0)
6815 100 T F if ($pred =~ s/^string\(\s*\)\s*=\s*($REG_STRING)\s*//o) { }
100 T F elsif ($pred =~ s/^string\(\s*\)\s*!=\s*($REG_STRING)\s*//o) { }
6819 100 T F if ($pred =~ s/^string\(\s*\)\s*=\s*($REG_NUMBER)\s*//o) { }
100 T F elsif ($pred =~ s/^string\(\s*\)\s*!=\s*($REG_NUMBER)\s*//o) { }
100 T F elsif ($pred =~ s/^string\(\s*\)\s*(>|<|>=|<=)\s*($REG_NUMBER)\s*//o) { }
100 T F elsif ($pred =~ s/^string\(\s*\)\s*($REG_MATCH)\s*($REG_REGEXP)\s*//o) { }
100 T F elsif ($pred =~ s/^string\(\s*\)\s*//o) { }
100 T F elsif ($pred =~ s/^@($REG_TAG_NAME)\s*($REG_OP)\s*($REG_STRING|$REG_NUMBER)//o) { }
100 T F elsif ($pred =~ s/^@($REG_TAG_NAME)\s*($REG_MATCH)\s*($REG_REGEXP)\s*//o) { }
100 T F elsif ($pred =~ s/^@($REG_TAG_NAME)\s*//o) { }
100 T F elsif ($pred =~ s/^\s*(?:not|!)\s*@($REG_TAG_NAME)\s*//o) { }
100 T F elsif ($pred =~ s/^\s*([()])//) { }
100 T F elsif ($pred =~ s/^\s*(and|or)\s*//) { }
6852 100 T F if $pred
6862 100 T F if ($xpath_exp)
6868 50 T F if ($@)
6877 100 T F if ($XML::Twig::XPath::VERSION or 0)
6879 50 T F if (eval { do { $$check_twig{'twig_xp'}->_parse($xpath_expression) } })
6895 100 T F unless defined $offset
6915 100 T F wantarray ? :
6926 100 T F if (not $parent and $elt->is_elt)
6929 100 T F if ($t and not $$t{'twig_parsing'}) { }
6941 100 T F if ($XML::Twig::weakrefs)
6945 100 T F if ($$elt{'twig_current'})
6952 100 T F if ($$parent{'first_child'} and $$parent{'first_child'} == $elt)
6955 100 T F unless ($$parent{'first_child'})
6958 100 T F if ($$parent{'last_child'} and $$parent{'last_child'} == $elt)
6959 100 T F if ($XML::Twig::weakrefs)
6962 100 T F if ($prev_sibling = $$elt{'prev_sibling'})
6964 100 T F if ($next_sibling = $$elt{'next_sibling'})
6965 100 T F if ($XML::Twig::weakrefs)
6968 100 T F if ($XML::Twig::weakrefs)
6969 100 T F if ($XML::Twig::weakrefs)
6974 100 T F if ($prev_sibling and $next_sibling and $prev_sibling->is_text and $XML::Twig::index2gi[$$prev_sibling{'gi'}] eq $XML::Twig::index2gi[$$next_sibling{'gi'}])
6989 100 T F unless ($elt->has_children)
6997 100 T F unless ($elt->has_children)
7006 100 T F if ($$elt{'twig_current'})
7008 100 T F if (not $$elt{'parent'}) { }
7011 100 T F unless (@children == 1)
7015 100 T F if ($XML::Twig::weakrefs)
7023 100 T F if (@children)
7028 100 T F if ($prev_sibling) { }
7030 100 T F if ($XML::Twig::weakrefs)
7040 100 T F if ($next_sibling) { }
7043 100 T F if ($XML::Twig::weakrefs)
7051 100 T F if ($XML::Twig::weakrefs)
7054 100 T F if ($prev_sibling and $prev_sibling->is_text and $XML::Twig::index2gi[$$first_child{'gi'}] eq $XML::Twig::index2gi[$$prev_sibling{'gi'}])
7056 100 T F if ($next_sibling and $next_sibling->is_text and $XML::Twig::index2gi[$$last_child{'gi'}] eq $XML::Twig::index2gi[$$next_sibling{'gi'}])
7060 100 T F if ($$elt{'parent'}{'twig_current'} and $$elt{'last_child'}->is_text)
7083 100 T F if (my $extra_data = $$elt{'extra_data'})
7085 100 T F if ($target) { }
7087 100 T F if ($target->is($ELT)) { }
50 T F elsif ($target->is($TEXT)) { }
7099 100 T F if (my $extra_data = $$elt{'extra_data_before_end_tag'})
7100 100 T F if (my $target = $$elt{'next_sibling'}) { }
50 T F elsif (my $parent = $$elt{'parent'}) { }
7101 100 T F if ($target->is($ELT)) { }
50 T F elsif ($target->is($TEXT)) { }
7127 100 T F if ($$elt{'parent'})
7131 100 T F if (ref $_[0]) { }
7133 100 T F if $_[1]
7138 100 T F if (my $method = $method{$pos}) { }
7140 100 T F unless (ref $_[0] and isa($_[0], 'XML::Twig::Elt'))
7141 100 T F if (not defined $_[0]) { }
100 T F elsif (not ref $_[0]) { }
7152 100 T F if (not $$ref{'parent'} and $pos =~ /^(before|after)$/ and not exists $$elt{'target'} and not exists $$elt{'comment'})
7161 100 T F if (my $ids = $$elt{'twig_id_list'} and my $t = $ref->twig)
7165 50 T F if ($XML::Twig::weakrefs)
7177 100 T F unless ($$ref{'parent'})
7178 100 T F if (my $t = $ref->twig) { }
7179 100 T F if (exists $$elt{'comment'} or exists $$elt{'target'}) { }
7191 50 T F if ($XML::Twig::weakrefs)
7192 100 T F if ($$parent{'first_child'} == $ref)
7194 100 T F if ($prev_sibling)
7195 50 T F if ($XML::Twig::weakrefs)
7197 50 T F if ($XML::Twig::weakrefs)
7207 100 T F unless ($$ref{'parent'})
7208 100 T F if (my $t = $ref->twig) { }
7209 100 T F if (exists $$elt{'comment'} or exists $$elt{'target'}) { }
7221 50 T F if ($XML::Twig::weakrefs)
7222 50 T F if ($XML::Twig::weakrefs)
100 T F if ($$parent{'last_child'} == $ref)
7225 50 T F if ($XML::Twig::weakrefs)
7227 50 T F if ($XML::Twig::weakrefs)
100 T F if ($next_sibling)
7239 100 T F if ($XML::Twig::weakrefs)
7241 50 T F if ($XML::Twig::weakrefs)
100 T F unless ($$parent{'last_child'})
7243 100 T F if ($XML::Twig::weakrefs)
7245 100 T F if ($XML::Twig::weakrefs)
100 T F if ($next_sibling)
7256 100 T F if ($XML::Twig::weakrefs)
7257 100 T F if ($XML::Twig::weakrefs)
7258 100 T F unless ($$parent{'first_child'})
7260 100 T F if ($XML::Twig::weakrefs)
7261 100 T F if ($prev_sibling)
7269 100 T F $ref->is_text ? :
7295 50 T F unless $allowed_options{$option}
7300 100 T F if ($options{'content_key'} =~ /^-/) { }
7309 100 T F if (isa($options{'forcearray'}, 'ARRAY'))
7316 100 T F if (ref $options{'keyattr'} eq 'ARRAY') { }
50 T F elsif (ref $options{'keyattr'} eq 'HASH') { }
7321 50 T F unless $prefix eq '+'
7322 50 T F if $prefix eq '-'
7330 100 T F unless $prefix
7331 100 T F if $prefix eq '-'
7337 100 T F if ($options{'var'}) { }
7340 100 T F if ($options{'variables'})
7345 50 T F if ($options{'var_regexp'} and not $options{'var'})
7360 100 T F $$options{'noattr'} || !$$elt{'att'} ? :
7373 100 T F if ($child->is_text) { }
7376 100 T F if ($$options{'normalise_space'} >= 2)
7377 100 T F if ($$options{'force_content'} or $nb_atts or scalar @children > 1) { }
7393 100 T F if (my $grouped_tag = $$options{'group_tags'}{$child_gi})
7395 100 T F if (not ref $child_data eq 'HASH' && keys %$child_data == 1 && defined(my $grouped_child_data = $$child_data{$grouped_tag})) { }
7404 100 T F if ($$options{'extra_folding'})
7405 100 T F if (ref $child_data eq 'HASH' and keys %$child_data == 1 and defined(my $content = $$child_data{$$options{'content_key'}}))
7412 100 T F if (my $keyatt = $child->_key_attr($options)) { }
100 T F elsif ($$options{'forcearray'} or $$options{'forcearray_tags'}{$child_gi} or $nb_children{$child_gi} > 1) { }
7415 100 T F if ($$options{'normalise_space'} >= 1)
7437 100 T F if ($$options{'remove_key_for_all'}{$att} or $$options{'remove_key_for_elt'}{"$gi#$att"})
7442 100 T F $$options{'var'} ? :
7443 100 T F if ($$options{'normalise_space'} >= 2)
7445 100 T F if ($$options{'prefix_key_for_all'}{$att} or $$options{'prefix_key_for_elt'}{"$gi#$att"}) { }
7462 100 T F if $$options{'noattr'}
7463 100 T F if ($$options{'key_for_all'}) { }
50 T F elsif ($$options{'key_for_elt'}) { }
7465 100 T F if ($$options{'key_for_all'}{$att})
7470 100 T F if (my $key_for_elt = $$options{'key_for_elt'}{$XML::Twig::index2gi[$$elt{'gi'}]})
7471 100 T F if defined $$elt{'att'}{$key_for_elt}
7479 100 T F if ($$options{'var'}) { }
7499 100 T F unless my $atts = $_[0]{'att'}
7504 100 T F unless my $atts = $_[0]{'att'}
7505 100 T F scalar keys %$atts ? :
7511 100 T F if (defined(my $value = $$options{'var_values'}{$2})) { }
7524 100 T F if (defined(my $var_name = $$elt{'att'}{$$options{'var'}}))
7533 100 T F $elt->is_text ? :
7550 100 T F if ($elt->is_text) { }
7563 100 T F if ($elt->is_text) { }
7586 100 T F if (ref $_[0]) { }
7592 100 T F unless (@tags)
7605 100 T F if ($previous_match) { }
7607 50 T F if $] < 5.01
7609 100 T F if $return_all
7613 50 T F if $] < 5.01
7616 100 T F if $return_all
7620 100 T F if (@matches) { }
7625 50 T F if $] < 5.01
7642 100 T F if ($previous_match and $text)
7647 100 T F if $return_all
7662 50 T F if ($perl_version >= 5.008 and $perl_version < 5.01 and not _keep_encoding())
7663 0 T F unless ($encode_is_loaded)
7683 100 T F if ($is_string) { }
7698 100 T F $match_start ? :
7707 100 T F unless $parents[-1] and $parents[-1] == $$text_elt{'parent'}
50 T F if ($found_hit)
7720 100 T F $_[0] =~ /&e[ln]t/ ? :
7735 100 T F unless length $item
7736 100 T F if ($item =~ /^&elt\s*\(([^)]*)\)/) { }
100 T F elsif ($item =~ /^&ent\s*\(\s*([^\s)]*)\s*\)/) { }
7749 50 T F if ($@)
7758 100 T F unless isa($e2, 'XML::Twig::Elt')
7760 100 T F unless $e1->is_text and $e2->is_text and $e1->gi eq $e2->gi
7767 100 T F if (my $extra_data_in_pcdata = $e2->_extra_data_in_pcdata)
7778 50 T F if ($e1->_last_child and $e1->_last_child->is_pcdata and @e2_children and $e2_children[0]->is_pcdata)
7788 100 T F if ($extra_data)
7793 100 T F if (my $extra_data_in_pcdata = $child2->_extra_data_in_pcdata)
7796 100 T F if (my $extra_data_before_end_tag = $e2->_extra_data_before_end_tag)
7812 100 T F if ($elt->extra_data)
7813 100 T F if ($$elt{'extra_data_before_end_tag'})
7815 100 T F if ($elt->is_asis)
7817 100 T F if (exists $$elt{'pcdata'}) { }
100 T F elsif (exists $$elt{'cdata'}) { }
100 T F elsif (exists $$elt{'target'}) { }
100 T F elsif (exists $$elt{'comment'}) { }
100 T F elsif (exists $$elt{'ent'}) { }
7819 100 T F if ($$elt{'extra_data_in_pcdata'})
7823 50 T F if ($$elt{'extra_data_in_pcdata'})
7833 100 T F if (my $atts = $$elt{'att'})
7835 100 T F if keep_atts_order()
7847 50 T F if ($XML::Twig::weakrefs)
7859 100 T F unless $XML::Twig::weakrefs
7865 100 T F if $XML::Twig::weakrefs
7872 100 T F if $ID and $t and defined $$elt{'att'} and exists $$elt{'att'}{$ID}
7873 100 T F if ($$elt{'former'})
7879 100 T F if ($XML::Twig::weakrefs) { }
8011 100 T F defined $_[1] ? :
8013 100 T F if ($style =~ /^\d+$/) { }
8014 100 T F unless $style < keys %pretty_print_style
8018 100 T F unless exists $pretty_print_style{$style}
8021 100 T F if ($WRAPPED{$pretty})
8022 50 T F unless XML::Twig::_use('Text::Wrap')
8034 100 T F defined $_[1] ? :
8036 100 T F if ($style =~ /^\d+$/) { }
8037 100 T F unless $style < keys %empty_tag_style
8042 100 T F unless exists $empty_tag_style{$style}
8050 100 T F unless $pretty_print_style{$a} <=> $pretty_print_style{$b}
8055 100 T F unless exists $quote_style{$style}
8061 50 T F defined $_[1] ? :
8069 100 T F defined $_[1] ? :
8076 100 T F defined $_[1] ? :
8084 50 T F defined $_[1] ? :
8091 50 T F defined $_[1] ? :
8112 50 T F defined $_[1] ? :
8122 50 T F defined $_[1] ? :
8124 100 T F if (isa($new_value, 'XML::Twig::Elt') or isa($new_value, 'XML::Twig'))
8126 100 T F if (not $new_value or isa($new_value, 'CODE')) { }
100 T F elsif ($new_value eq 'latin1') { }
100 T F elsif ($XML::Twig::filter{$new_value}) { }
8140 100 T F defined $_[1] ? :
8142 100 T F if (isa($new_value, 'XML::Twig::Elt') or isa($new_value, 'XML::Twig'))
8144 100 T F if (not $new_value or isa($new_value, 'CODE')) { }
50 T F elsif ($new_value eq 'latin1') { }
100 T F elsif ($XML::Twig::filter{$new_value}) { }
8158 100 T F defined $_[1] ? :
8165 50 T F defined $_[1] ? :
8181 100 T F if $$elt{'gi'} < $XML::Twig::SPECIAL_GI
8188 50 T F $att ? :
8189 100 T F if ($ns_map)
8192 100 T F if ($output_text_filter)
8195 100 T F $pretty == $INDENTEDA ? :
100 T F $pretty == $NSGMLS ? :
8201 100 T F if ($$option{'escape_gt'} and not $replaced_ents =~ />/)
8204 100 T F $keep_atts_order ? :
8205 100 T F if (@att_names) { }
8206 100 T F $ns_map ? :
8207 100 T F if ($output_text_filter)
8214 100 T F if ($pretty == $INDENTEDA and @att_names == 1)
8220 100 T F if $pretty == $NSGMLS
8224 100 T F if ($empty_tag_style eq $HTML and not $$elt{'first_child'} and not $$elt{'extra_data_before_end_tag'} and $html_empty_elt{$gi})
8226 50 T F $$elt{'first_child'} ? :
100 T F defined $$elt{'empty'} ? :
8230 100 T F $empty_tag_style ? :
100 T F $pretty == $INDENTEDA && @att_names == 1 ? :
100 T F $pretty == $INDENTEDA && @att_names > 1 ? :
100 T F $empty_tag_style eq $HTML && $html_empty_elt{$gi} ? :
100 T F !$$elt{'empty'} || $$elt{'extra_data_before_end_tag'} ? :
8239 100 T F if (substr($XML::Twig::index2gi[$$elt{'gi'}], 0, 1) eq '#' and substr($XML::Twig::index2gi[$$elt{'gi'}], 0, 9) ne '#default:')
8243 50 T F defined $extra_data ? :
100 T F unless ($pretty)
8249 100 T F if ($pretty == $RECORD1) { }
100 T F elsif ($pretty == $RECORD2) { }
100 T F elsif ($pretty == $NICE) { }
100 T F elsif ($KEEP_TEXT_TAG_ON_ONE_LINE{$pretty}) { }
8251 100 T F if $level < 2
8252 100 T F if $level == 1
8262 100 T F unless (not $parent or $$parent{'contains_text'})
8264 100 T F if $parent and $$parent{'contains_text'} or $elt->contains_text
8270 100 T F unless (not $parent or $$parent{'contains_text'})
8274 100 T F if $parent and $$parent{'contains_text'} or $elt->contains_text
8278 100 T F if ($return or $indent)
8281 50 T F if $xml_space_preserve
8282 100 T F if ($t and $$t{'twig_keep_spaces_in'})
8284 50 T F if $$t{'twig_keep_spaces_in'}{$XML::Twig::index2gi[$$ancestor{'gi'}]}
8288 100 T F if ($extra_data)
8301 100 T F if $$elt{'gi'} < $XML::Twig::SPECIAL_GI or $$elt{'empty'} and not $$elt{'extra_data_before_end_tag'}
8307 100 T F if (my $map = $$elt{'att'}{'#original_gi'})
8310 100 T F if ($output_text_filter)
8315 100 T F if (substr($XML::Twig::index2gi[$$elt{'gi'}], 0, 1) eq '#' and substr($XML::Twig::index2gi[$$elt{'gi'}], 0, 9) ne '#default:')
8317 100 T F unless $pretty
8323 100 T F if ($pretty == $RECORD1) { }
100 T F elsif ($pretty == $RECORD2) { }
100 T F elsif ($pretty == $NICE) { }
100 T F elsif ($KEEP_TEXT_TAG_ON_ONE_LINE{$pretty}) { }
8324 100 T F if $elt->level == 0
8328 100 T F unless ($elt->contains_text)
8336 50 T F if ($parent && !$$parent{'contains_text'} || !$parent and (not $$elt{'contains_text'} and $$elt{'has_flushed_child'} || $$elt{'first_child'}))
8346 100 T F if ($parent && !$$parent{'contains_text'} || !$parent and (not $$elt{'contains_text'} and $$elt{'has_flushed_child'} || $$elt{'first_child'}))
8356 100 T F if ($return or $indent)
8359 50 T F if $xml_space_preserve
8360 100 T F if ($t and $$t{'twig_keep_spaces_in'})
8362 50 T F if $$t{'twig_keep_spaces_in'}{$XML::Twig::index2gi[$$ancestor{'gi'}]}
8365 100 T F $pretty == $INDENTEDCT ? :
50 T F if ($return)
8370 100 T F unless $$elt{'parent'}
8378 100 T F if (my $original_prefix = $$map{$prefix})
8379 100 T F if ($original_prefix eq '#default') { }
8397 100 T F isa($_[0], 'GLOB') || isa($_[0], 'IO::Scalar') ? :
8398 100 T F defined $fh ? :
8400 100 T F if defined $old_select
8409 50 T F $keep_encoding ? :
8410 50 T F unless open $out_fh, $mode, $filename
8421 50 T F -f $filename ? :
8422 50 T F unless XML::Twig::_use('File::Temp')
8423 50 T F unless XML::Twig::_use('File::Basename')
8427 50 T F unless rename $tmpfilename, $filename
8437 50 T F $_[0] && isa($_[0], 'XML::Twig::Elt') ? :
8442 100 T F $_[0] && isa($_[0], 'XML::Twig::Elt') ? :
8450 50 T F isa($_[0], 'GLOB') || isa($_[0], 'IO::Scalar') ? :
8451 50 T F defined $fh ? :
8452 100 T F defined($pretty = shift()) ? :
8454 50 T F if ($elt->inherit_att('xml:space') || '') eq 'preserve'
8460 50 T F if defined $old_select
8461 100 T F if defined $old_pretty
8467 100 T F if ($$elt{'gi'} >= $XML::Twig::SPECIAL_GI) { }
8469 50 T F if $preserve
8470 100 T F unless ($elt->_flushed)
8478 50 T F unless ($$elt{'end_tag_flushed'})
8479 50 T F if $preserve
8481 100 T F if (my $parent = $$elt{'parent'})
8485 100 T F if (exists $$elt{'pcdata'}) { }
100 T F elsif (exists $$elt{'cdata'}) { }
100 T F elsif (exists $$elt{'target'}) { }
50 T F elsif (exists $$elt{'comment'}) { }
0 T F elsif (exists $$elt{'ent'}) { }
8486 50 T F if (my $parent = $$elt{'parent'})
8490 50 T F if (my $parent = $$elt{'parent'})
8497 50 T F $output_filter ? :
8505 100 T F if (@options and grep {lc $_ eq 'no_recurse';} @options)
8509 100 T F if ($$elt{'gi'} >= $XML::Twig::SPECIAL_GI) { }
100 T F elsif (exists $$elt{'pcdata'}) { }
100 T F elsif (exists $$elt{'cdata'}) { }
50 T F elsif (exists $$elt{'ent'}) { }
8516 100 T F $output_filter ? :
8519 50 T F $output_filter ? :
8528 100 T F if $_->is_text or exists $$_{'ent'}
8539 100 T F if ($_[0] and isa($_[0], 'HASH'))
8541 100 T F if (defined $args{'PrettyPrint'})
8542 100 T F if (defined $args{'EmptyTags'})
8545 100 T F if ($elt->inherit_att('xml:space') || '') eq 'preserve'
8550 100 T F if ($output_filter)
8552 100 T F if ($pretty == $WRAPPED || $pretty == $INDENTEDC and not $xml_space_preserve)
8557 100 T F if (defined $old_pretty)
8558 100 T F if (defined $old_empty_tag_style)
8586 100 T F if ($$elt{'gi'} >= $XML::Twig::SPECIAL_GI) { }
8589 100 T F if $preserve
8591 100 T F unless $no_tag
8599 100 T F unless $no_tag
8600 100 T F if $preserve
8603 100 T F if $$elt{'extra_data'}
8604 100 T F if (exists $$elt{'pcdata'}) { }
100 T F elsif (exists $$elt{'cdata'}) { }
100 T F elsif (exists $$elt{'target'}) { }
100 T F elsif (exists $$elt{'comment'}) { }
50 T F elsif (exists $$elt{'ent'}) { }
8606 100 T F if ($pretty >= $INDENTED and not $$elt{'parent'}{'contains_text'})
8609 100 T F if ($pretty >= $INDENTED and not $$elt{'parent'}{'contains_text'})
8621 100 T F isa($_[0], 'HASH') ? :
8626 100 T F if (defined(my $string = $$elt{'pcdata'})) { }
8628 100 T F if (not $$elt{'extra_data_in_pcdata'}) { }
8630 100 T F unless not $replaced_ents or $keep_encoding or $$elt{'asis'}
8637 100 T F if ($keep_encoding or $$elt{'asis'}) { }
8642 100 T F unless ($keep_encoding or $$elt{'asis'})
8649 100 T F $output_text_filter ? :
8683 100 T F unless (defined $cdata)
8684 100 T F if ($remove_cdata) { }
8696 0 T F if ($_[0] and $_[0]{'escape_gt'} and not $replace =~ />/)
8698 50 T F if (defined(my $string = $$elt{'att'}{$att})) { }
8707 100 T F unless (defined $string)
8708 100 T F if ($keep_encoding) { }
8713 100 T F if ($do_not_escape_amp_in_atts) { }
8724 100 T F $output_text_filter ? :
8731 100 T F if ($expand_external_entities and $t = $ent->twig and $el = $t->entity_list and $ent_string = $$el{'entities'}{$ent->ent_name}{'val'}) { }
8745 100 T F if (@options and grep {lc $_ eq 'no_recurse';} @options)
8749 100 T F if (exists $$elt{'pcdata'}) { }
100 T F elsif (exists $$elt{'cdata'}) { }
100 T F elsif (exists $$elt{'target'}) { }
100 T F elsif (exists $$elt{'comment'}) { }
100 T F elsif (exists $$elt{'ent'}) { }
8759 50 T F defined $child_text ? :
8762 100 T F unless (defined $string)
8764 50 T F $output_text_filter ? :
8768 100 T F if $_->is_text or exists $$_{'ent'}
8799 100 T F if ($keep_encoding) { }
8806 50 T F unless $$cdata{'gi'} = $XML::Twig::gi2index{$PCDATA}
8822 100 T F unless (length $$desc{'pcdata'})
8840 100 T F if ($$elt{'gi'} >= $XML::Twig::SPECIAL_GI) { }
8843 100 T F if ($data and my $start_element = $handler->can('start_element'))
8844 100 T F unless ($elt->_flushed)
8849 100 T F if (my $data = &$end_tag_data($elt) and my $end_element = $handler->can('end_element'))
8854 100 T F if (exists $$elt{'pcdata'} and my $characters = $handler->can('characters')) { }
100 T F elsif (exists $$elt{'cdata'}) { }
100 T F elsif (exists $$elt{'target'} and my $pi = $handler->can('processing_instruction')) { }
100 T F elsif (exists $$elt{'comment'} and my $comment = $handler->can('comment')) { }
100 T F elsif (exists $$elt{'ent'}) { }
8857 50 T F if (my $start_cdata = $handler->can('start_cdata'))
8859 50 T F if (my $characters = $handler->can('characters'))
8861 50 T F if (my $end_cdata = $handler->can('end_cdata'))
8870 50 T F if (my $se = $handler->can('skipped_entity')) { }
0 T F elsif (my $characters = $handler->can('characters')) { }
8873 0 T F if (defined $elt->ent_string) { }
8886 100 T F if substr($XML::Twig::index2gi[$$elt{'gi'}], 0, 1) eq '#' and substr($XML::Twig::index2gi[$$elt{'gi'}], 0, 9) ne '#default:'
8890 100 T F unless $att =~ /^#(?!default:)/
8897 100 T F if substr($XML::Twig::index2gi[$$elt{'gi'}], 0, 1) eq '#' and substr($XML::Twig::index2gi[$$elt{'gi'}], 0, 9) ne '#default:'
8906 100 T F if substr($XML::Twig::index2gi[$$elt{'gi'}], 0, 1) eq '#' and substr($XML::Twig::index2gi[$$elt{'gi'}], 0, 9) ne '#default:'
8927 100 T F if $att =~ /^#(?!default:)/
8943 100 T F unless /^\{[^}]*\}xmlns/
100 T F if (my $start_prefix_mapping = $handler->can('start_prefix_mapping') and my(@new_prefix_mappings) = grep({/^\{$XMLNS_URI\}/ unless /^\{[^}]*\}xmlns/;} keys %{$$data{'Attributes'};}))
8948 100 T F if ($prefix_string eq 'xmlns')
8962 100 T F if (my $end_prefix_mapping = $handler->can('end_prefix_mapping'))
8970 100 T F if substr($XML::Twig::index2gi[$$elt{'gi'}], 0, 1) eq '#' and substr($XML::Twig::index2gi[$$elt{'gi'}], 0, 9) ne '#default:'
8978 100 T F if $child->is_text or exists $$child{'ent'}
8991 100 T F if ($XML::Twig::index2gi[$$elt{'gi'}] eq $PCDATA) { }
100 T F elsif ($XML::Twig::index2gi[$$elt{'gi'}] eq $CDATA) { }
100 T F elsif ($elt->contains_a_single($PCDATA)) { }
8994 100 T F if ($option{'force_pcdata'}) { }
8995 50 T F unless $$elt{'gi'} = $XML::Twig::gi2index{$PCDATA}
9023 100 T F unless defined $_[0]
9026 100 T F if (ref $_[0] eq 'HASH')
9030 100 T F unless defined $_[0]
9034 100 T F if (not ref $_[0] and $_[0] eq $EMPTY)
9039 100 T F if ($XML::Twig::index2gi[$$elt{'gi'}] eq $PCDATA || $elt->contains_a_single($PCDATA) and @_ == 1 and not ref $_[0]) { }
100 T F elsif ($XML::Twig::index2gi[$$elt{'gi'}] eq $CDATA and @_ == 1 and not ref $_[0]) { }
9053 50 T F if (@_)
9056 100 T F if (ref $child and isa($child, 'XML::Twig::Elt')) { }
9062 100 T F if (my $pcdata = $$elt{'last_child'} and $$elt{'last_child'}->is_pcdata) { }
9091 100 T F if (defined $args[0] and isa($args[0], 'HASH'))
9111 100 T F if ($position eq 'before' or $position eq 'after' or $position eq 'first_child' or $position eq 'last_child') { }
9133 100 T F if ($$elt{'twig_current'})
9140 100 T F if (my $parent = $$elt{'parent'}) { }
9141 50 T F if ($XML::Twig::weakrefs)
9142 100 T F if ($$parent{'first_child'} == $elt)
9143 50 T F if ($XML::Twig::weakrefs)
100 T F if ($$parent{'last_child'} == $elt)
9148 50 T F if ($twig and $twig->root and $twig->root eq $elt)
9153 100 T F if (my $prev_sibling = $$elt{'prev_sibling'})
9154 50 T F if ($XML::Twig::weakrefs)
9158 100 T F if (my $next_sibling = $$elt{'next_sibling'})
9160 50 T F if ($XML::Twig::weakrefs)
9163 100 T F if ($XML::Twig::weakrefs)
9165 100 T F if ($XML::Twig::weakrefs)
9166 100 T F if ($XML::Twig::weakrefs)
9170 100 T F if (defined $_[0] and isa($_[0], 'HASH'))
9182 100 T F if ($$elt{'parent'})
9184 100 T F if (my $parent = $$ref{'parent'}) { }
50 T F elsif ($ref->twig and $ref == $ref->twig->root) { }
9185 100 T F if ($XML::Twig::weakrefs)
9186 100 T F if ($$parent{'first_child'} == $ref)
9187 100 T F if ($XML::Twig::weakrefs)
100 T F if ($$parent{'last_child'} == $ref)
9192 100 T F if (my $prev_sibling = $$ref{'prev_sibling'})
9193 100 T F if ($XML::Twig::weakrefs)
9196 100 T F if (my $next_sibling = $$ref{'next_sibling'})
9198 100 T F if ($XML::Twig::weakrefs)
9201 100 T F if ($XML::Twig::weakrefs)
9202 100 T F if ($XML::Twig::weakrefs)
9229 100 T F $option && $option eq 'asis' ? :
9230 100 T F if (exists $$elt{'pcdata'} and $asis && $$elt{'asis'} || !($asis || $$elt{'asis'})) { }
100 T F elsif ($$elt{'first_child'} and $$elt{'first_child'}->is_pcdata and $asis && $$elt{'first_child'}{'asis'} || !($asis || $$elt{'first_child'}{'asis'})) { }
9243 100 T F exists $$elt{'pcdata'} ? :
9245 100 T F if ($asis)
9253 100 T F $option && $option eq 'asis' ? :
9254 100 T F if (exists $$elt{'pcdata'} and $asis && $$elt{'asis'} || !($asis || $$elt{'asis'})) { }
100 T F elsif ($$elt{'last_child'} and $$elt{'last_child'}->is_pcdata and $asis && $$elt{'last_child'}{'asis'} || !($asis || $$elt{'last_child'}{'asis'})) { }
9265 100 T F exists $$elt{'pcdata'} ? :
9267 100 T F if ($asis)
9286 100 T F unless ($index == 1 and not $ancestor->next_sibling($gi))
9311 50 T F isa($_[0], 'HASH') ? :
9321 50 T F unless @to_wrap
9365 100 T F unless my $child = $elt->first_child($cond)
9406 100 T F $opt{'order'} eq 'reverse' ? :
9407 100 T F $opt{'type'} eq 'numeric' ? :
9409 100 T F if ($opt{'type'} eq 'numeric') { }
100 T F elsif ($opt{'type'} eq 'alpha') { }
9422 100 T F if $opt{'order'} eq 'reverse'
9431 100 T F if ($a->cmp($b) == -1) { }
9436 100 T F if ($a->cmp($b) == 1) { }
9441 100 T F if $a->cmp($b) == -1
9447 100 T F unless $a->cmp($b) == 1
9453 100 T F if $a->cmp($b) == 1
9459 100 T F unless $a->cmp($b) == -1
9468 100 T F if $a == $b
9469 100 T F if $a->in($b)
9470 100 T F if $b->in($a)
9477 100 T F unless $a_pile[-1] == $b_pile[-1]
9492 100 T F if $a_prev == $b_next
9494 100 T F if $a_next == $b_prev
9496 100 T F if $b_prev == $a_next
9498 100 T F if $b_next == $a_prev
9505 100 T F defined $$option{'atts'} ? :
9506 100 T F defined $$option{'extra'} ? :
9507 100 T F defined $$option{'short_text'} ? :
9514 100 T F if ($elt->is_elt) { }
9518 100 T F if ($atts and my(@atts) = $elt->att_names)
9522 100 T F if ($extra)
9527 100 T F if (exists $$elt{'pcdata'}) { }
50 T F elsif (exists $$elt{'ent'}) { }
100 T F elsif (exists $$elt{'cdata'}) { }
100 T F elsif (exists $$elt{'comment'}) { }
50 T F elsif (exists $$elt{'target'}) { }
9537 100 T F if ($extra)
9545 100 T F if ($elt->extra_data)
9550 100 T F if ($$elt{'extra_data_in_pcdata'})
9557 100 T F if ($$elt{'extra_data_before_end_tag'})
9568 100 T F if (not $length or length $string < $length)