sax_handler¶
Defined in header: <orcus/sax_parser.hpp>
-
class sax_handler¶
Public Functions
-
inline void doctype(const orcus::sax::doctype_declaration &dtd)¶
Called when a doctype declaration <!DOCTYPE … > is encountered.
- Parameters:
dtd – struct containing doctype declaration data.
-
inline void start_declaration(std::string_view decl)¶
Called when <?… is encountered, where the ‘…’ may be an arbitraray dentifier. One common declaration is <?xml which is typically given at the start of an XML stream.
- Parameters:
decl – name of the identifier.
-
inline void end_declaration(std::string_view decl)¶
Called when the closing tag (>) of a <?… ?> is encountered.
- Parameters:
decl – name of the identifier.
-
inline void start_element(const orcus::sax::parser_element &elem)¶
Called at the start of each element.
- Parameters:
elem – information of the element being parsed.
-
inline void end_element(const orcus::sax::parser_element &elem)¶
Called at the end of each element.
- Parameters:
elem – information of the element being parsed.
-
inline void characters(std::string_view val, bool transient)¶
Called when a segment of a text content is parsed. Each text content is a direct child of an element, which may have multiple child contents when the element also has a child element that are direct sibling to the text contents or the text contents are splitted by a comment.
- Parameters:
val – value of the text content.
transient – when true, the text content has been converted and is stored in a temporary buffer due to presence of one or more encoded characters, in which case the passed text value needs to be either immediately converted to a non-text value or be interned within the scope of the callback.
-
inline void attribute(const orcus::sax::parser_attribute &attr)¶
Called upon parsing of an attribute of an element. Note that when the attribute’s transient flag is set, the attribute value is stored in a temporary buffer due to presence of one or more encoded characters, and must be processed within the scope of the callback.
- Parameters:
attr – struct containing attribute information.
-
inline void doctype(const orcus::sax::doctype_declaration &dtd)¶