Go to the source code of this file.
void destroyParser |
( |
Parser * |
parser) | |
|
- Parameters
-
[in] | parser | the parser object |
Definition at line 240 of file EXIParser.c.
- Parameters
-
[out] | parser | the parser object |
[in] | buffer | an input buffer holding (part of) the representation of EXI stream |
[in] | app_data | Application data to be passed to the content handler callbacks |
- Returns
- Error handling code
Definition at line 37 of file EXIParser.c.
- Parameters
-
[in] | parser | the parser object |
[in] | outOfBandOpts | TRUE if there are out-of-band options set in parser->strm.header FALSE otherwise |
- Returns
- Error handling code
Definition at line 66 of file EXIParser.c.
- Parameters
-
[in] | parser | the parser object |
- Returns
- Error handling code; EXIP_PARSING_COMPLETE when the parsing is completed succesfully, EXIP_BUFFER_END_REACHED when the whole content of the buffer is parsed but there is more events in the EXI stream. In case of EXIP_BUFFER_END_REACHED, pushEXIData() must be used to fill the buffer with the next chunk of the EXI stream before calling parseNext() again.
Definition at line 182 of file EXIParser.c.
errorCode pushEXIData |
( |
char * |
inBuf, |
|
|
unsigned int |
bufSize, |
|
|
unsigned int * |
bytesRead, |
|
|
Parser * |
parser |
|
) |
| |
This function is used to implement push-parsing interface. After parseNext() returns EXIP_BUFFER_END_REACHED use this function to add more data to the parsing buffer. Currently this non-blocking parsing interface works only in EXI schema mode without any deviations. Otherwise the grammars and the string tables needs also to be backuped and then restored in case of EXIP_BUFFER_END_REACHED which is very complicated procedure.
- Warning
- Padding bits to fill a byte when in bit-packed mode should not be used as they will be interpreted as if being part of the EXI stream. This can be a concern when streaming EXI data which is not byte-aligned.
- Parameters
-
[in] | inBuf | the next EXI stream chunk to be parsed |
[in] | bufSize | the size in bytes of the inBuf |
[out] | bytesRead | how many bytes have been read from inBuf and written to the Parser internal binary buffer. |
[in,out] | parser | the parser object |
- Returns
- Error handling code
Definition at line 214 of file EXIParser.c.
- Parameters
-
[in] | parser | the parser object |
[in] | schema | object; if parser.strm.header.opts.schemaIDMode == SCHEMA_ID_NIL or parser.strm.header.opts.schemaIDMode == SCHEMA_ID_EMPTY the schema object is ignored; if parser.strm.header.opts.schemaIDMode == SCHEMA_ID_ABSENT and schema == NULL then schema-less mode, schema != NULL schema enabled; if parser.strm.header.opts.schemaIDMode == SCHEMA_ID_SET and schema == NULL is an error parser.strm.header.opts.schemaID contains the identifier of the schema if any |
- Returns
- Error handling code
Definition at line 87 of file EXIParser.c.