45#define XPARSER_ALLOC 2
53 struct xparser_context;
54 typedef struct xparser_context xparser;
131 int xparser_init(xparser* parser, xparser_handlers* handlers,
void* userdata,
unsigned int options);
210 typedef void * (*xparser_alloc) (
int xparser_reset(xparser *parser, int full)
reset a parser to post-create state.
void xparser_setalloc(xparser_alloc pa, void *ud)
install user memory allocator.
xparser_textmode
flags for text handling
Definition: xparser.h:110
const char *const xparser_eventname[xparserLAST]
array lookup for event names
xparser_event
events for user callbacks
Definition: xparser.h:57
unsigned int xparser_flags(xparser *parser)
whitespace flags
size_t xparser_count(xparser *parser)
source bytes parsed
int(* xparser_callback)(xparser *parser, void *userdata, xparser_event event, const char *name, const char **attr, const char *data)
xparser user callback.
Definition: xparser.h:98
int xparser_parse(xparser *parser, const char *pData, size_t datalen)
parse a chunk of xml data.
int xparser_has_doc(xparser *parser)
have we parsed the document node ?
xparser * xparser_create(void)
create a parser.
void *(* xparser_alloc)(void *ud, void *ptr, size_t osize, size_t nsize)
define XPARSER_ALLOC non-zero to enable a user memory allocator.
Definition: xparser.h:210
unsigned int xparser_line(xparser *parser)
current source line (1-based)
const char * xparser_errormsg(xparser *parser)
last error message
void * xparser_userdata(xparser *parser)
user data supplied to create/init
int xparser_term(xparser *parser)
destroy a parser, WITHOUT deallocating pointer.
unsigned int xparser_depth(xparser *parser)
current tag nesting depth
unsigned int xparser_col(xparser *parser)
current source column (1-based)
void xparser_destroy(xparser *parser)
destroy a parser
int xparser_init(xparser *parser, xparser_handlers *handlers, void *userdata, unsigned int options)
initialise a parser.
@ xparserPI
processing instruction : <?name data?>
Definition: xparser.h:76
@ xparserEND_ELEMENT
end element : </name>
Definition: xparser.h:74
@ xparserCOMMENT
comment : <!–data-->
Definition: xparser.h:77
@ xparserCDATA
cdata : data
Definition: xparser.h:78
@ xparserINIT
called from xparser_init()
Definition: xparser.h:64
@ xparserSTART_ELEMENT
start element : <name attrs >
Definition: xparser.h:73
@ xparserSTART
called from xparser_parse(), on first call since init() or reset()
Definition: xparser.h:67
@ xparserXML
xml declaration : <?xml attrs ?>
Definition: xparser.h:72
@ xparserLAST
dummy for array sizing
Definition: xparser.h:80
@ xparserTERM
called from xparser_destroy()
Definition: xparser.h:66
@ xparserRESET
called from xparser_reset()
Definition: xparser.h:65
@ xparserNOEVENT
internal flag for no event set.
Definition: xparser.h:59
@ xparserEMPTY_ELEMENT
empty element : <name attrs />
Definition: xparser.h:75
@ xparserTEXT
text : data
Definition: xparser.h:79