Server IP : 149.255.58.128 / Your IP : 216.73.216.116
System : Linux cloud516.thundercloud.uk 5.14.0-427.26.1.el9_4.x86_64 #1 SMP PREEMPT_DYNAMIC Wed Jul 17 15:51:13 EDT 2024 x86_64
PHP Version : 8.2.28
Disable Function : allow_url_include, apache_child_terminate, apache_setenv, exec, passthru, pcntl_exec, posix_kill, posix_mkfifo, posix_getpwuid, posix_setpgid, posix_setsid, posix_setuid, posix_setgid, posix_seteuid, posix_setegid, posix_uname, proc_close, proc_get_status, proc_open, proc_terminate, shell_exec, show_source, system
cURL : ON | WGET : ON | Sudo : OFF | Pkexec : OFF
Upload Files :
Command :
Current File : /usr/local/lib64/perl5/5.32/XML/LibXML//SAX.pm
# $Id$
#
# This is free software, you may use it and distribute it under the same terms as
# Perl itself.
#
# Copyright 2001-2003 AxKit.com Ltd., 2002-2006 Christian Glahn, 2006-2009 Petr Pajas
#
#
package XML::LibXML::SAX;
use strict;
use warnings;
use vars qw($VERSION @ISA);
$VERSION = "2.0210"; # VERSION TEMPLATE: DO NOT CHANGE
use XML::LibXML;
use XML::SAX::Base;
use parent qw(XML::SAX::Base);
use Carp;
use IO::File;
sub CLONE_SKIP {
return $XML::LibXML::__threads_shared ? 0 : 1;
}
sub set_feature {
my ($self, $feat, $val) = @_;
if ($feat eq 'http://xmlns.perl.org/sax/join-character-data') {
$self->{JOIN_CHARACTERS} = $val;
return 1;
}
shift(@_);
return $self->SUPER::set_feature(@_);
}
sub _parse_characterstream {
my ( $self, $fh ) = @_;
# this my catch the xml decl, so the parser won't get confused about
# a possibly wrong encoding.
croak( "not implemented yet" );
}
# See:
# https://rt.cpan.org/Public/Bug/Display.html?id=132759
sub _calc_new_XML_LibXML_parser_for_compatibility_with_XML_Simple_etc
{
return XML::LibXML->new( expand_entities => 1, );
}
sub _parse_bytestream {
my ( $self, $fh ) = @_;
$self->{ParserOptions}{LibParser} = $self->_calc_new_XML_LibXML_parser_for_compatibility_with_XML_Simple_etc() unless defined $self->{ParserOptions}{LibParser};
$self->{ParserOptions}{ParseFunc} = \&XML::LibXML::parse_fh;
$self->{ParserOptions}{ParseFuncParam} = $fh;
$self->_parse;
return $self->end_document({});
}
sub _parse_string {
my ( $self, $string ) = @_;
$self->{ParserOptions}{LibParser} = $self->_calc_new_XML_LibXML_parser_for_compatibility_with_XML_Simple_etc() unless defined $self->{ParserOptions}{LibParser};
$self->{ParserOptions}{ParseFunc} = \&XML::LibXML::parse_string;
$self->{ParserOptions}{ParseFuncParam} = $string;
$self->_parse;
return $self->end_document({});
}
sub _parse_systemid {
my $self = shift;
$self->{ParserOptions}{LibParser} = $self->_calc_new_XML_LibXML_parser_for_compatibility_with_XML_Simple_etc() unless defined $self->{ParserOptions}{LibParser};
$self->{ParserOptions}{ParseFunc} = \&XML::LibXML::parse_file;
$self->{ParserOptions}{ParseFuncParam} = shift;
$self->_parse;
return $self->end_document({});
}
sub parse_chunk {
my ( $self, $chunk ) = @_;
$self->{ParserOptions}{LibParser} = $self->_calc_new_XML_LibXML_parser_for_compatibility_with_XML_Simple_etc() unless defined $self->{ParserOptions}{LibParser};
$self->{ParserOptions}{ParseFunc} = \&XML::LibXML::parse_xml_chunk;
$self->{ParserOptions}{LibParser}->{IS_FILTER}=1; # a hack to prevent parse_xml_chunk from issuing end_document
$self->{ParserOptions}{ParseFuncParam} = $chunk;
$self->_parse;
return;
}
sub _parse {
my $self = shift;
my $args = bless $self->{ParserOptions}, ref($self);
if (defined($self->{JOIN_CHARACTERS})) {
$args->{LibParser}->{JOIN_CHARACTERS} = $self->{JOIN_CHARACTERS};
} else {
$args->{LibParser}->{JOIN_CHARACTERS} = 0;
}
$args->{LibParser}->set_handler( $self );
eval {
$args->{ParseFunc}->($args->{LibParser}, $args->{ParseFuncParam});
};
if ( $args->{LibParser}->{SAX}->{State} == 1 ) {
croak( "SAX Exception not implemented, yet; Data ended before document ended\n" );
}
# break a possible circular reference
$args->{LibParser}->set_handler( undef );
if ( $@ ) {
croak $@;
}
return;
}
1;
Name |
Size |
Last Modified |
Owner / Group |
Permissions |
Options |
.. | -- | February 06 2024 22:25:18 | 0 / root | 0755 | |
SAX | -- | February 06 2024 22:25:18 | 0 / root | 0755 | |
| | | | | |
Attr.pod | 4.024 KB | January 24 2024 15:13:41 | 0 / root | 0444 | |
AttributeHash.pm | 4.485 KB | January 24 2024 15:03:50 | 0 / root | 0444 | |
Boolean.pm | 1.563 KB | January 24 2024 15:03:50 | 0 / root | 0444 | |
CDATASection.pod | 1.284 KB | January 24 2024 15:13:41 | 0 / root | 0444 | |
Comment.pod | 1.363 KB | January 24 2024 15:13:41 | 0 / root | 0444 | |
Common.pm | 8.202 KB | January 24 2024 15:03:50 | 0 / root | 0444 | |
Common.pod | 3.586 KB | January 24 2024 15:13:41 | 0 / root | 0444 | |
DOM.pod | 6.229 KB | January 24 2024 15:13:41 | 0 / root | 0444 | |
Devel.pm | 4.91 KB | January 24 2024 15:03:50 | 0 / root | 0444 | |
Document.pod | 21.087 KB | January 24 2024 15:13:41 | 0 / root | 0444 | |
DocumentFragment.pod | 0.8 KB | January 24 2024 15:13:41 | 0 / root | 0444 | |
Dtd.pod | 1.991 KB | January 24 2024 15:13:41 | 0 / root | 0444 | |
Element.pod | 13.482 KB | January 24 2024 15:13:41 | 0 / root | 0444 | |
ErrNo.pm | 27.831 KB | January 24 2024 15:03:50 | 0 / root | 0444 | |
ErrNo.pod | 0.577 KB | January 24 2024 15:13:41 | 0 / root | 0444 | |
Error.pm | 8.45 KB | January 24 2024 15:03:50 | 0 / root | 0444 | |
Error.pod | 5.978 KB | January 24 2024 15:13:41 | 0 / root | 0444 | |
InputCallback.pod | 9.592 KB | January 24 2024 15:13:41 | 0 / root | 0444 | |
Literal.pm | 2.045 KB | January 24 2024 15:03:50 | 0 / root | 0444 | |
Namespace.pod | 3.283 KB | January 24 2024 15:13:41 | 0 / root | 0444 | |
Node.pod | 25.666 KB | January 24 2024 15:13:41 | 0 / root | 0444 | |
NodeList.pm | 7.313 KB | January 24 2024 15:03:50 | 0 / root | 0444 | |
Number.pm | 1.871 KB | January 24 2024 15:03:50 | 0 / root | 0444 | |
PI.pod | 2.218 KB | January 24 2024 15:13:41 | 0 / root | 0444 | |
Parser.pod | 27.786 KB | January 24 2024 15:13:41 | 0 / root | 0444 | |
Pattern.pod | 2.905 KB | January 24 2024 15:13:41 | 0 / root | 0444 | |
Reader.pm | 5.749 KB | January 24 2024 15:03:50 | 0 / root | 0444 | |
Reader.pod | 17.601 KB | January 24 2024 15:13:41 | 0 / root | 0444 | |
RegExp.pod | 1.537 KB | January 24 2024 15:13:41 | 0 / root | 0444 | |
RelaxNG.pod | 2.342 KB | January 24 2024 15:13:41 | 0 / root | 0444 | |
SAX.pm | 3.449 KB | January 24 2024 15:03:50 | 0 / root | 0444 | |
SAX.pod | 1.762 KB | January 24 2024 15:13:41 | 0 / root | 0444 | |
Schema.pod | 2.194 KB | January 24 2024 15:13:41 | 0 / root | 0444 | |
Text.pod | 5.47 KB | January 24 2024 15:13:41 | 0 / root | 0444 | |
XPathContext.pm | 3.147 KB | January 24 2024 15:03:50 | 0 / root | 0444 | |
XPathContext.pod | 11.491 KB | January 24 2024 15:13:41 | 0 / root | 0444 | |
XPathExpression.pod | 1.639 KB | January 24 2024 15:13:41 | 0 / root | 0444 | |