RPC::XM...MLParser(3)

okay bestie, welcome to the RPC::XM...MLParser(3) page from User Contributed Perl Documentation β€” it's the lore drop for a very specific little XML parser container, and it's lowkey iconic ✨

🌸 NAME 🌸

RPC::XML::Parser::XMLParser β€” A container class for XML::Parser πŸ’–

✨ SYNOPSIS ✨

fr fr, this class should rarely (if ever) be used directly:

# This class should rarely (if ever) be used directly:

use RPC::XML::ParserFactory 'XML::Parser';
...
$P = RPC::XML::ParserFactory->new();
$P->parse($message);

πŸ¦‹ DESCRIPTION πŸ¦‹

okay so this class implements the interface defined in the RPC::XML::Parser factory-class (see RPC::XML::Parser) using the XML::Parser module to handle the actual manipulation of XML. that's the whole vibe 🫢

πŸ’… SUBROUTINES/METHODS πŸ’…

This module implements the public-facing methods as described in RPC::XML::Parser:

✨ new [ ARGS ]

The constructor only recognizes the two parameters specified in the base class (for the RPC::XML::base64 file-spooling operations). no extra mystery args, bestie πŸ’–

✨ parse [ STRING | STREAM ]

The parse() method accepts either a string of XML, a filehandle of some sort, or no argument at all. In the latter case, the return value is a parser instance that acts as a push-parser (a non-blocking parser). For the first two types of input, the return value is either a message object (one of RPC::XML::request or RPC::XML::response) or an error. slay πŸ’…

✨ parse_more STRING

Only callable on a push-parser instance. It parses the chunk of XML, which does not have to describe a complete document, and adds it to the current running document. If this method is called on a parser instance that is not a push-parser, an exception is thrown. periodt πŸ’€

✨ parse_done

Only callable on a push-parser instance. It finishes the parsing process and returns either a message object (one of RPC::XML::request or RPC::XML::response) or an error (if the document was incomplete, not well-formed, or not valid). If this method is called on a parser instance that is not a push-parser, an exception is thrown. iconic behavior πŸŽ€

🌈 DIAGNOSTICS 🌈

All methods return some type of reference on success. The new and parse methods return message strings on errors. The parse_more and parse_done methods may throw exceptions on errors, if the error occurs at the XML::Parser level. so yeah, keep an eye on those returns πŸ‘€

πŸ”₯ EXTERNAL ENTITIES πŸ”₯

As of version 1.24 of this module (version 0.75 of the RPC::XML suite), external entities whose URI is a "file:/" scheme (local file) are explicitly ignored. This is for security purposes. no cap, that's a security thing πŸ›‘οΈ

πŸ’€ BUGS πŸ’€

Please report any bugs or feature requests to bug-rpc-xml at rt.cpan.org, or through the web interface at http://rt.cpan.org/NoAuth/ReportBug.html?Queue=RPC-XML. I will be notified, and then you'll automatically be notified of progress on your bug as I make changes. bestie, they want the receipts πŸ™ˆ

πŸŽ€ SUPPORT πŸŽ€

This file and the code within are copyright (c) 2011 by Randy J. Ray.

Copying and distribution are permitted under the terms of the Artistic License 2.0 β€” http://www.opensource.org/licenses/artistic-license-2.0.php β€” or the GNU LGPL 2.1 β€” http://www.opensource.org/licenses/lgpl-2.1.php. legal bestie paperwork, but make it slay πŸ“œβœ¨

🧚 CREDITS 🧚

The XML-RPC standard is Copyright (c) 1998-2001, UserLand Software, Inc. See http://www.xmlrpc.com for more information about the XML-RPC specification.

πŸ¦‹ SEE ALSO πŸ¦‹

  • RPC::XML
  • RPC::XML::Parser
  • XML::Parser

πŸ’œ AUTHOR πŸ’œ

Randy J. Ray β€” <rjray@blackperl.com>


and that's the whole page, bestie β€” final sign-off: perl v5.42.0 Β· 2021-04-08 Β· RPC::XM...MLParser(3) πŸ’‹βœ¨

πŸ“¦ where this page comes from