|
Ghidra 11.4.2
Ghidra internal decompiler documentation.
|
Lightweight (and incomplete) XML parser for marshaling data to and from the decompiler. More...
#include "types.h"#include <fstream>#include <iomanip>#include <string>#include <vector>#include <map>Classes | |
| class | ghidra::Attributes |
| The attributes for a single XML element. More... | |
| class | ghidra::ContentHandler |
| The SAX interface for parsing XML documents. More... | |
| class | ghidra::Element |
| An XML element. A node in the DOM tree. More... | |
| class | ghidra::Document |
| A complete in-memory XML document. More... | |
| class | ghidra::TreeHandler |
| A SAX interface implementation for constructing an in-memory DOM model. More... | |
| class | ghidra::DocumentStorage |
| A container for parsed XML documents. More... | |
| struct | ghidra::DecoderError |
| An exception thrown by the XML parser. More... | |
Typedefs | |
| typedef void * | ghidra::Locator |
| Placeholder for a document locator object. | |
| typedef vector< Element * > | ghidra::List |
| A list of XML elements. | |
Functions | |
| int4 | ghidra::xml_parse (istream &i, ContentHandler *hand, int4 dbg=0) |
| Start-up the XML parser given a stream and a handler. | |
| Document * | ghidra::xml_tree (istream &i) |
| Parse the given XML stream into an in-memory document. | |
| void | ghidra::xml_escape (ostream &s, const char *str) |
| Send the given character array to a stream, escaping characters with special XML meaning. | |
| void | ghidra::a_v (ostream &s, const string &attr, const string &val) |
| Output an XML attribute name/value pair to stream. | |
| void | ghidra::a_v_i (ostream &s, const string &attr, intb val) |
| Output the given signed integer as an XML attribute value. | |
| void | ghidra::a_v_u (ostream &s, const string &attr, uintb val) |
| Output the given unsigned integer as an XML attribute value. | |
| void | ghidra::a_v_b (ostream &s, const string &attr, bool val) |
| Output the given boolean value as an XML attribute. | |
| bool | ghidra::xml_readbool (const string &attr) |
| Read an XML attribute value as a boolean. | |
Lightweight (and incomplete) XML parser for marshaling data to and from the decompiler.
|
inline |
Output an XML attribute name/value pair to stream.
| s | is the output stream |
| attr | is the name of the attribute |
| val | is the attribute value |
References ghidra::a_v().
Referenced by ghidra::a_v(), ghidra::XmlEncode::writeSpace(), and ghidra::XmlEncode::writeString().
|
inline |
Output the given boolean value as an XML attribute.
| s | is the output stream |
| attr | is the name of the attribute |
| val | is the given boolean value |
References ghidra::a_v_b().
Referenced by ghidra::a_v_b(), and ghidra::XmlEncode::writeBool().
|
inline |
Output the given signed integer as an XML attribute value.
| s | is the output stream |
| attr | is the name of the attribute |
| val | is the given integer value |
References ghidra::a_v_i().
Referenced by ghidra::a_v_i(), and ghidra::XmlEncode::writeSignedInteger().
|
inline |
Output the given unsigned integer as an XML attribute value.
| s | is the output stream |
| attr | is the name of the attribute |
| val | is the given unsigned integer value |
References ghidra::a_v_u().
Referenced by ghidra::a_v_u(), and ghidra::XmlEncode::writeUnsignedInteger().
| void ghidra::xml_escape | ( | ostream & | s, |
| const char * | str | ||
| ) |
Send the given character array to a stream, escaping characters with special XML meaning.
This makes the following character substitutions:
| s | is the stream to write to |
| str | is the given character array to escape |
| int4 ghidra::xml_parse | ( | istream & | i, |
| ContentHandler * | hand, | ||
| int4 | dbg = 0 |
||
| ) |
Start-up the XML parser given a stream and a handler.
This runs the low-level XML parser.
| i | is the given stream to get character data from |
| hand | is the ContentHandler that stores or processes the XML content events |
| dbg | is non-zero if the parser should output debug information during its parse |
|
inline |
Read an XML attribute value as a boolean.
This method is intended to recognize the strings, "true", "yes", and "1" as a true value. Anything else is returned as false.
| attr | is the given XML attribute value (as a string) |
References ghidra::xml_readbool().
Referenced by ghidra::XmlDecode::readBool(), ghidra::XmlDecode::readBool(), and ghidra::xml_readbool().
| Document * ghidra::xml_tree | ( | istream & | i | ) |
Parse the given XML stream into an in-memory document.
The stream is parsed using the standard ContentHandler for producing an in-memory DOM representation of the XML document.
| i | is the given stream |