aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKatharina Fey <kookie@spacekookie.de>2016-08-27 01:08:08 +0200
committerKatharina Fey <kookie@spacekookie.de>2019-06-04 20:21:03 +0200
commitab7dbf81bc03b0e01074a7fd1e25bcd18292907d (patch)
tree6596638a5c3a44a8119479ca5a0372bc721c5516
parentcaad27814fab468f66de0a3138e3900342d3acde (diff)
Updating API part 2
-rw-r--r--CMakeLists.txt2
-rw-r--r--lib/dyn_utils.c18
-rw-r--r--test/main.c58
3 files changed, 46 insertions, 32 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 5f6d416..e738040 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -12,7 +12,7 @@ set(CMAKE_BUILD_TYPE Debug)
# Create our project for further reference
project(libdyntree)
-set(DYN_TREE_SRC lib/dyn_tree.c lib/dyn_utils.c)
+set(DYN_TREE_SRC lib/dtree.c lib/dyn_utils.c)
# Define our library in cmake
add_library(libdyntree SHARED ${DYN_TREE_SRC})
diff --git a/lib/dyn_utils.c b/lib/dyn_utils.c
index 9e27ed0..ae00bf9 100644
--- a/lib/dyn_utils.c
+++ b/lib/dyn_utils.c
@@ -1,4 +1,4 @@
-#include <dtree/dyn_tree.h>
+#include <dtree/dtree.h>
#include <stdio.h>
#include <stdlib.h>
@@ -294,7 +294,7 @@ dt_err dtree_decode_json(dtree *(*data), const char *jd)
parents[0] = new_root;
ctr = 0;
} else {
- dtree_addrecursive(parents[ctr], &new_root);
+ dtree_addlist(parents[ctr], &new_root);
parents[++ctr] = new_root;
}
@@ -309,7 +309,7 @@ dt_err dtree_decode_json(dtree *(*data), const char *jd)
if(in_str) break; // Ignore if we're in a string
dtree *new_root;
- dtree_addrecursive(parents[ctr], &new_root);
+ dtree_addlist(parents[ctr], &new_root);
parents[++ctr] = new_root;
// Open a block
@@ -328,10 +328,10 @@ dt_err dtree_decode_json(dtree *(*data), const char *jd)
dtree *key, *val;
dtree *rec_entry;
- dtree_addrecursive(parents[ctr], &rec_entry);
+ dtree_addlist(parents[ctr], &rec_entry);
dtree_addpair(rec_entry, &key, &val);
- dtree_addliteral(key, curr_key, REAL_STRLEN(curr_key));
- dtree_addliteral(val, curr_str, REAL_STRLEN(curr_str));
+ dtree_addliteral(key, curr_key);
+ dtree_addliteral(val, curr_str);
/* Clear the pointer reference */
rec_entry = key = val = NULL;
@@ -369,10 +369,10 @@ dt_err dtree_decode_json(dtree *(*data), const char *jd)
dtree *key, *val;
dtree *rec_entry;
- dtree_addrecursive(parents[ctr], &rec_entry);
+ dtree_addlist(parents[ctr], &rec_entry);
dtree_addpair(rec_entry, &key, &val);
- dtree_addliteral(key, curr_key, REAL_STRLEN(curr_key));
- dtree_addliteral(val, curr_str, REAL_STRLEN(curr_str));
+ dtree_addliteral(key, curr_key);
+ dtree_addliteral(val, curr_str);
/* Clear the pointer reference */
rec_entry = key = val = NULL;
diff --git a/test/main.c b/test/main.c
index 6090e94..240de6c 100644
--- a/test/main.c
+++ b/test/main.c
@@ -1,6 +1,6 @@
#include <stdio.h>
-#include <dtree/dyn_tree.h>
+#include <dtree/dtree.h>
/**
* A small test that creates a tree, splits the nodes
@@ -44,6 +44,20 @@ int main(void)
dtree *data;
dtree_decode_json(&data, json);
+ /* Copy structures */
+
+ dtree *key, *val;
+ dtree *root = dtree_allocpair_new(&key, &val);
+
+ dtree_addliteral(key, "Core Data");
+ dtree_addliteral(val, "dtree is cool!");
+
+ dtree *root_copy;
+ dtree_copy(root, &root_copy);
+
+ printf("Copy complete?\n");
+
+
end:
exit:
printf("==== done ====\n");
@@ -64,7 +78,7 @@ dt_err split_and_merge()
/* Add child as a recursive node to root */
dtree *child;
- err = dtree_addrecursive(root, &child);
+ err = dtree_addlist(root, &child);
if(err) goto exit;
/* Make child a literal node containing the works of shakespeare */
@@ -78,7 +92,7 @@ dt_err split_and_merge()
"That flesh is heir to, 'tis a consummation\n"
"Devoutly to be wish'd. To die, to sleep;";
- err = dtree_addliteral(child, hamlet, REAL_STRLEN(hamlet));
+ err = dtree_addliteral(child, hamlet);
if(err) goto exit;
/* Split our tree into two single-nodes */
@@ -104,13 +118,13 @@ dt_err search_for_payload()
if(err) goto exit;
const char *string = "This is some data!";
- err = dtree_addrecursive(root, &a);
+ err = dtree_addlist(root, &a);
if(err) goto exit;
- err = dtree_addliteral(a, string, REAL_STRLEN(string));
+ err = dtree_addliteral(a, string);
if(err) goto exit;
- err = dtree_addrecursive(root, &b);
+ err = dtree_addlist(root, &b);
if(err) goto exit;
err = dtree_addnumeral(b, 1337);
@@ -137,25 +151,25 @@ dt_err json_encode(char *json) {
if (err) goto exit;
dtree *key, *val;
- err = dtree_addrecursive(root, &a);
+ err = dtree_addlist(root, &a);
if (err) goto exit;
- err = dtree_addrecursive(root, &b);
+ err = dtree_addlist(root, &b);
if (err) goto exit;
- err = dtree_addrecursive(root, &c);
+ err = dtree_addlist(root, &c);
if (err) goto exit;
err = dtree_addpair(a, &key, &val);
if (err) goto exit;
- err = dtree_addliteral(key, "Server Address", REAL_STRLEN("Server Address"));
+ err = dtree_addliteral(key, "Server Address");
if (err) goto exit;
- err = dtree_addliteral(val, "https://github.com", REAL_STRLEN("https://github.com"));
+ err = dtree_addliteral(val, "https://github.com");
if (err) goto exit;
key = val = NULL;
err = dtree_addpair(b, &key, &val);
if (err) goto exit;
- err = dtree_addliteral(key, "Server Port", REAL_STRLEN("Server Port"));
+ err = dtree_addliteral(key, "Server Port");
if (err) goto exit;
err = dtree_addnumeral(val, 8080);
if (err) goto exit;
@@ -164,21 +178,21 @@ dt_err json_encode(char *json) {
err = dtree_addpair(c, &key, &val);
if (err) goto exit;
- err = dtree_addliteral(key, "Users", REAL_STRLEN("Users"));
+ err = dtree_addliteral(key, "Users");
if (err) goto exit;
dtree *sbrec, *sbrec2;
- err = dtree_addrecursive(val, &sbrec);
+ err = dtree_addlist(val, &sbrec);
if (err) goto exit;
- err = dtree_addrecursive(val, &sbrec2);
+ err = dtree_addlist(val, &sbrec2);
if (err) goto exit;
dtree *subkey, *subval;
err = dtree_addpair(sbrec, &subkey, &subval);
if (err) goto exit;
- err = dtree_addliteral(subkey, "spacekookie", REAL_STRLEN("spacekookie"));
+ err = dtree_addliteral(subkey, "spacekookie");
if (err) goto exit;
- err = dtree_addliteral(subval, "Admin", REAL_STRLEN("Admin"));
+ err = dtree_addliteral(subval, "Admin");
if (err) goto exit;
key = val = NULL;
@@ -186,9 +200,9 @@ dt_err json_encode(char *json) {
dtree *subkey2, *subval2;
err = dtree_addpair(sbrec2, &subkey2, &subval2);
if (err) goto exit;
- err = dtree_addliteral(subkey2, "jane", REAL_STRLEN("jane"));
+ err = dtree_addliteral(subkey2, "jane");
if (err) goto exit;
- err = dtree_addliteral(subval2, "normal", REAL_STRLEN("normal"));
+ err = dtree_addliteral(subval2, "normal");
if (err) goto exit;
err = dtree_encode_set(root, DYNTREE_JSON_MINIFIED);
@@ -206,17 +220,17 @@ dt_err test_shortcut_functions()
dtree *key, *val;
dtree *root = dtree_allocpair_new(&key, &val);
- dtree_addliteral(key, "Address", REAL_STRLEN("Address"));
+ dtree_addliteral(key, "Address");
// dtree_addliteral(val, "Berlin 10555", REAL_STRLEN("Berlin 10555"));
dtree *list_root;
- dtree **list = dtree_alloc_reclist(&list_root, 4); // Allocate 4 nodes
+ dtree **list = dtree_alloc_listlist(&list_root, 4); // Allocate 4 nodes
int i;
for(i = 0; i < 4; i++){
char message[32];
sprintf(message, "Message no.%d", i);
- dtree_addliteral(list[i], message, REAL_STRLEN(message));
+ dtree_addliteral(list[i], message);
}
dtree_merge_trees(val, list_root);