Lines Matching refs:parser

263 void obex_app_param_parser_init(obex_app_param_parser_t * parser, obex_app_param_parser_callback_t …  in obex_app_param_parser_init()  argument
264 parser->state = OBEX_APP_PARAM_PARSER_STATE_W4_TYPE; in obex_app_param_parser_init()
265 parser->callback = callback; in obex_app_param_parser_init()
266 parser->user_data = user_data; in obex_app_param_parser_init()
267 parser->param_size = param_size; in obex_app_param_parser_init()
268 parser->param_pos = 0; in obex_app_param_parser_init()
271 …rams_state_t obex_app_param_parser_process_data(obex_app_param_parser_t *parser, const uint8_t *da… in obex_app_param_parser_process_data() argument
272 while ((data_len > 0) && (parser->param_pos < parser->param_size)){ in obex_app_param_parser_process_data()
274 switch(parser->state){ in obex_app_param_parser_process_data()
278 parser->tag_id = *data_buffer; in obex_app_param_parser_process_data()
279 parser->state = OBEX_APP_PARAM_PARSER_STATE_W4_LEN; in obex_app_param_parser_process_data()
282 parser->tag_len = *data_buffer; in obex_app_param_parser_process_data()
283 if ((parser->param_pos + parser->tag_len) > parser->param_size){ in obex_app_param_parser_process_data()
284 parser->state = OBEX_APP_PARAM_PARSER_STATE_INVALID; in obex_app_param_parser_process_data()
287 parser->tag_pos = 0; in obex_app_param_parser_process_data()
288 parser->state = OBEX_APP_PARAM_PARSER_STATE_W4_VALUE; in obex_app_param_parser_process_data()
291 bytes_to_consume = btstack_min(parser->tag_len - parser->tag_pos, data_len); in obex_app_param_parser_process_data()
293 …(*parser->callback)(parser->user_data, parser->tag_id, (uint8_t) parser->tag_len, (uint8_t) parser in obex_app_param_parser_process_data()
294 parser->tag_pos += bytes_to_consume; in obex_app_param_parser_process_data()
295 if (parser->tag_pos == parser->tag_len){ in obex_app_param_parser_process_data()
296 parser->state = OBEX_APP_PARAM_PARSER_STATE_W4_TYPE; in obex_app_param_parser_process_data()
306 parser->param_pos += bytes_to_consume; in obex_app_param_parser_process_data()
309 if (parser->param_pos == parser->param_size){ in obex_app_param_parser_process_data()
310 if (parser->state == OBEX_APP_PARAM_PARSER_STATE_W4_TYPE){ in obex_app_param_parser_process_data()
311 parser->state = OBEX_APP_PARAM_PARSER_STATE_COMPLETE; in obex_app_param_parser_process_data()
313 parser->state = OBEX_APP_PARAM_PARSER_STATE_INVALID; in obex_app_param_parser_process_data()
322 switch (parser->state){ in obex_app_param_parser_process_data()