pandemonium_engine_minimal/doc/classes/XMLParser.xml
2023-12-14 23:24:47 +01:00

147 lines
5.2 KiB
XML

<?xml version="1.0" encoding="UTF-8" ?>
<class name="XMLParser" inherits="Reference" version="4.2">
<brief_description>
Low-level class for creating parsers for [url=https://en.wikipedia.org/wiki/XML]XML[/url] files.
</brief_description>
<description>
This class can serve as base to make custom XML parsers. Since XML is a very flexible standard, this interface is low-level so it can be applied to any possible schema.
</description>
<tutorials>
</tutorials>
<methods>
<method name="get_attribute_count" qualifiers="const">
<return type="int" />
<description>
Gets the amount of attributes in the current element.
</description>
</method>
<method name="get_attribute_name" qualifiers="const">
<return type="String" />
<argument index="0" name="idx" type="int" />
<description>
Gets the name of the attribute specified by the index in [code]idx[/code] argument.
</description>
</method>
<method name="get_attribute_value" qualifiers="const">
<return type="String" />
<argument index="0" name="idx" type="int" />
<description>
Gets the value of the attribute specified by the index in [code]idx[/code] argument.
</description>
</method>
<method name="get_current_line" qualifiers="const">
<return type="int" />
<description>
Gets the current line in the parsed file (currently not implemented).
</description>
</method>
<method name="get_named_attribute_value" qualifiers="const">
<return type="String" />
<argument index="0" name="name" type="String" />
<description>
Gets the value of a certain attribute of the current element by name. This will raise an error if the element has no such attribute.
</description>
</method>
<method name="get_named_attribute_value_safe" qualifiers="const">
<return type="String" />
<argument index="0" name="name" type="String" />
<description>
Gets the value of a certain attribute of the current element by name. This will return an empty [String] if the attribute is not found.
</description>
</method>
<method name="get_node_data" qualifiers="const">
<return type="String" />
<description>
Gets the contents of a text node. This will raise an error in any other type of node.
</description>
</method>
<method name="get_node_name" qualifiers="const">
<return type="String" />
<description>
Gets the name of the current element node. This will raise an error if the current node type is neither [constant NODE_ELEMENT] nor [constant NODE_ELEMENT_END].
</description>
</method>
<method name="get_node_offset" qualifiers="const">
<return type="int" />
<description>
Gets the byte offset of the current node since the beginning of the file or buffer.
</description>
</method>
<method name="get_node_type">
<return type="int" enum="XMLParser.NodeType" />
<description>
Gets the type of the current node. Compare with [enum NodeType] constants.
</description>
</method>
<method name="has_attribute" qualifiers="const">
<return type="bool" />
<argument index="0" name="name" type="String" />
<description>
Check whether the current element has a certain attribute.
</description>
</method>
<method name="is_empty" qualifiers="const">
<return type="bool" />
<description>
Check whether the current element is empty (this only works for completely empty tags, e.g. [code]&lt;element \&gt;[/code]).
</description>
</method>
<method name="open">
<return type="int" enum="Error" />
<argument index="0" name="file" type="String" />
<description>
Opens an XML file for parsing. This returns an error code.
</description>
</method>
<method name="open_buffer">
<return type="int" enum="Error" />
<argument index="0" name="buffer" type="PoolByteArray" />
<description>
Opens an XML raw buffer for parsing. This returns an error code.
</description>
</method>
<method name="read">
<return type="int" enum="Error" />
<description>
Reads the next node of the file. This returns an error code.
</description>
</method>
<method name="seek">
<return type="int" enum="Error" />
<argument index="0" name="position" type="int" />
<description>
Moves the buffer cursor to a certain offset (since the beginning) and read the next node there. This returns an error code.
</description>
</method>
<method name="skip_section">
<return type="void" />
<description>
Skips the current section. If the node contains other elements, they will be ignored and the cursor will go to the closing of the current element.
</description>
</method>
</methods>
<constants>
<constant name="NODE_NONE" value="0" enum="NodeType">
There's no node (no file or buffer opened).
</constant>
<constant name="NODE_ELEMENT" value="1" enum="NodeType">
Element (tag).
</constant>
<constant name="NODE_ELEMENT_END" value="2" enum="NodeType">
End of element.
</constant>
<constant name="NODE_TEXT" value="3" enum="NodeType">
Text node.
</constant>
<constant name="NODE_COMMENT" value="4" enum="NodeType">
Comment node.
</constant>
<constant name="NODE_CDATA" value="5" enum="NodeType">
CDATA content.
</constant>
<constant name="NODE_UNKNOWN" value="6" enum="NodeType">
Unknown node.
</constant>
</constants>
</class>