18 extern int eprintf(
int level,
int var,
const char *
fmt, ...);
19 #define pr_fmt(fmt) fmt 21 #define pr_err(fmt, ...) \ 22 eprintf(0, verbose, pr_fmt(fmt), ##__VA_ARGS__) 24 #define pr_info(fmt, ...) \ 25 eprintf(1, verbose, pr_fmt(fmt), ##__VA_ARGS__) 27 #define pr_debug(fmt, ...) \ 28 eprintf(2, verbose, pr_fmt(fmt), ##__VA_ARGS__) 31 #define roundup(x, y) ( \ 33 const typeof(y) __y = y; \ 34 (((x) + (__y - 1)) / __y) * __y; \
int json_len(jsmntok_t *t)
int eprintf(int level, int var, const char *fmt,...)
int json_streq(char *map, jsmntok_t *t, const char *s)
int json_line(char *map, jsmntok_t *t)
jsmntok_t * parse_json(const char *fn, char **map, size_t *size, int *len)
void free_json(char *map, size_t size, jsmntok_t *tokens)
const char * json_name(jsmntok_t *t)