parser_event_handlers(3)
| parser_event_handlers(3) | Library Functions Manual | parser_event_handlers(3) |
NAME
parser_event_handlers -
SYNOPSIS
#include <sexp.h>
Data Fields
void(* start_sexpr )()
void(* end_sexpr )()
void(* characters )(const char *data, size_t len, atom_t aty)
void(* binary )(const char *data, size_t len)
Detailed Description
Some users would prefer to, instead of parsing a full string and walking a potentially huge sexp_t structure, use an XML SAX-style parser where events are triggered as certain parts of the s-expression are encountered. This structure contains a set of function pointers that are called by the parser as it hits expression start and end, and completes reading atoms and binary data. NOTE: The parser_event_handler struct that is a field in the continuation data structure is NOT freed by destroy_continuation since structs for callbacks are ALWAYS malloc'd by the user, not the library.
Field Documentation
void(* binary)(const char *data, size_t len) The binary function pointer is called when the parser is functioning in INLINE_BINARY mode and binary data is encountered. The function must take two arguments: a pointer to the beginning of the binary data and the number of bytes of data present.
void(* characters)(const char *data, size_t len, atom_t aty) The characters function pointer is called when an atom is completely parsed. The function must take three arguments: a pointer to the atom data, the number of elements the atom contains, and the specific type of atom that the data represents.
void(* end_sexpr)() The end_sexpr function pointer is called when an close parenthesis is encountered ending an expression.
void(* start_sexpr)() The start_sexpr function pointer is called when an open parenthesis is encountered starting an expression.
Author
Generated automatically by Doxygen for Small, Fast S-Expression Library from the source code.
| Thu Nov 21 2013 | Small, Fast S-Expression Library |
