8c2e723938fabaded5f7997724e07a3d69c2ae37
[yacjs.git] / src / main.c
1 #include <stdio.h>
2
3 #include "yacjs.h"
4
5 int main() {
6     struct yacjs_node *root = yacjs_parse("{\"foo\": \"bar\", \"baz\": [\"a\", \"b\", \"c\"]}");
7
8     FILE *fp = fopen("test/test1.json", "r");
9     char buffer[32768];
10     int ret = fread(buffer, 1, 32768, fp);
11     buffer[ret] = 0;
12     printf("bytes read: %i\n", ret);
13     fclose(fp);
14
15     root = yacjs_parse(buffer);
16     printf("root: %p\n", root);
17
18     struct yacjs_node *node = yacjs_node_array_elem(root, 0);
19     node = yacjs_node_dict_get(node, "friends");
20     printf("%i friends\n", yacjs_node_array_size(node));
21
22     node = yacjs_node_array_elem(node, 1);
23     printf("second friend ID and name: %li, %s\n",
24         yacjs_node_num(yacjs_node_dict_get(node, "id")),
25         yacjs_node_str(yacjs_node_dict_get(node, "name")));
26
27     return 0;
28 }