|
15 | 15 | #define JSON_PARSER_IMPLEMENTATION |
16 | 16 | #include "json_parser.h" |
17 | 17 |
|
18 | | -int main() { |
| 18 | +int main() |
| 19 | +{ |
19 | 20 | const char *json = "{\"name\":\"John\\u00D0e\",\"age\":30,\"scores\":[90.5,80.0]}"; |
20 | 21 | json_parser_t parser; |
21 | 22 | json_parser_init(&parser, json, strlen(json)); |
22 | | - |
23 | 23 | json_error_t error = json_parser_parse(&parser); |
24 | | - if (error != JSON_ERROR_NONE) { |
| 24 | + |
| 25 | + if(error != JSON_ERROR_NONE) |
| 26 | + { |
25 | 27 | printf("Error: %s\n", json_error_string(error)); |
26 | 28 | return 1; |
27 | 29 | } |
28 | | - |
| 30 | + |
29 | 31 | size_t count; |
30 | 32 | const json_token_t *tokens = json_get_tokens(&parser, &count); |
31 | | - for (size_t i = 0; i < count; i++) { |
| 33 | + |
| 34 | + for(size_t i = 0; i < count; i++) |
| 35 | + { |
32 | 36 | const json_token_t *t = &tokens[i]; |
33 | 37 | printf("Token %zu: ", i); |
34 | | - switch (t->type) { |
| 38 | + |
| 39 | + switch(t->type) |
| 40 | + { |
35 | 41 | case JSON_TOKEN_OBJECT: |
36 | | - printf("Object\n"); break; |
| 42 | + printf("Object\n"); |
| 43 | + break; |
| 44 | + |
37 | 45 | case JSON_TOKEN_ARRAY: |
38 | | - printf("Array\n"); break; |
| 46 | + printf("Array\n"); |
| 47 | + break; |
| 48 | + |
39 | 49 | case JSON_TOKEN_STRING: |
40 | | - printf("String: %s\n", t->value.string); break; |
| 50 | + printf("String: %s\n", t->value.string); |
| 51 | + break; |
| 52 | + |
41 | 53 | case JSON_TOKEN_NUMBER: |
42 | | - printf("Number: %f\n", t->value.number); break; |
| 54 | + printf("Number: %f\n", t->value.number); |
| 55 | + break; |
| 56 | + |
43 | 57 | case JSON_TOKEN_TRUE: |
44 | | - printf("Boolean: true\n"); break; |
| 58 | + printf("Boolean: true\n"); |
| 59 | + break; |
| 60 | + |
45 | 61 | case JSON_TOKEN_FALSE: |
46 | | - printf("Boolean: false\n"); break; |
| 62 | + printf("Boolean: false\n"); |
| 63 | + break; |
| 64 | + |
47 | 65 | case JSON_TOKEN_NULL: |
48 | | - printf("Null\n"); break; |
| 66 | + printf("Null\n"); |
| 67 | + break; |
| 68 | + |
49 | 69 | default: |
50 | 70 | printf("Unknown\n"); |
51 | 71 | } |
52 | 72 | } |
53 | | - |
| 73 | + |
54 | 74 | json_parser_free(&parser); |
55 | 75 | return 0; |
56 | 76 | } |
0 commit comments