XML::SAX::ExpatNB - A nonblocking filehandle oriented XML::SAX parser, and a namespace consistency link, from XML::Parser::ExpatNB to XML::SAX::Expat::Incremental.
use XML::SAX::ExpatNB; my $nb_parser = XML::SAX::ExpatNB->new; # use XML::SAX::ParserFactory $nb->parse_file($fh) if $data;
XML::Parser::Expat has a variation, called XML::Parser::ExpatNB which is rather stupidly named, IMHO. It's a useful module, though, and in case you got here from there looking for an XML::SAX based wrapper for it, then one exists, but is not named XML::SAX::ExpatNB. It's called XML::SAX::Expat::Incremental.
This module implements nonblocking reads on a handle, and parses that data using XML::SAX::Expat::Incremental. It relies on "blocking" in IO::Handle.
Reads as much data as possible from FH, without blocking, and parse it.
Accepts the parameter ReadOnce, whose value is the number of bytes to read, as an option.
ReadOnce
Reads BYTES bytes from FH (defaults to 4096), and parse them, without blocking.
XML::Parser, XML::SAX, XML::SAX::Expat, XML::SAX::Expat::Incremental
Yuval Kogman <nothingmuch@woobling.org>
Copyright (c) 2005 Yuval Kogman. All rights reserved This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
To install XML::SAX::ExpatNB, copy and paste the appropriate command in to your terminal.
cpanm
cpanm XML::SAX::ExpatNB
CPAN shell
perl -MCPAN -e shell install XML::SAX::ExpatNB
For more information on module installation, please visit the detailed CPAN module installation guide.