static void set_error(scanner_t *s, const char *source, const char *fmt, ...) { va_list ap; va_start(ap, fmt); jsonp_error_vset(s->error, s->token.line, s->token.column, s->token.pos, fmt, ap); jsonp_error_set_source(s->error, source); va_end(ap); }
static void set_error(scanner_t *s, const char *source, const char *fmt, ...) { va_list ap; size_t pos; va_start(ap, fmt); pos = (size_t)(s->fmt - s->start); jsonp_error_vset(s->error, s->line, s->column, pos, fmt, ap); jsonp_error_set_source(s->error, source); va_end(ap); }
void jsonp_error_init(json_error_t *error, const char *source) { if(error) { error->text[0] = '\0'; error->line = -1; error->column = -1; error->position = 0; if(source) jsonp_error_set_source(error, source); else error->source[0] = '\0'; } }