diff options
author | David Robillard <d@drobilla.net> | 2018-02-04 15:33:36 +0100 |
---|---|---|
committer | David Robillard <d@drobilla.net> | 2020-06-21 18:12:03 +0200 |
commit | 7994fd5ebcfc07e83d7f46e974466a7d32211ac6 (patch) | |
tree | 4122f7a3b3e99bce41296b4140644909349fce5e /src/node.c | |
parent | 6eebfed8b6d3ca10602ae0842d4961d867c766a9 (diff) | |
download | serd-7994fd5ebcfc07e83d7f46e974466a7d32211ac6.tar.gz serd-7994fd5ebcfc07e83d7f46e974466a7d32211ac6.tar.bz2 serd-7994fd5ebcfc07e83d7f46e974466a7d32211ac6.zip |
Use opaque node API
Diffstat (limited to 'src/node.c')
-rw-r--r-- | src/node.c | 15 |
1 files changed, 11 insertions, 4 deletions
@@ -35,6 +35,12 @@ # endif #endif +char* +serd_node_buffer(SerdNode* node) +{ + return (char*)(node + 1); +} + SerdNode serd_node_from_string(SerdType type, const char* str) { @@ -115,8 +121,9 @@ serd_node_new_uri_from_node(const SerdNode* uri_node, const SerdURI* base, SerdURI* out) { - return (uri_node->type == SERD_URI && uri_node->buf) - ? serd_node_new_uri_from_string(uri_node->buf, base, out) + const char* uri_str = serd_node_get_string(uri_node); + return (uri_node->type == SERD_URI && uri_str) + ? serd_node_new_uri_from_string(uri_str, base, out) : SERD_NODE_NULL; } @@ -382,13 +389,13 @@ serd_node_get_type(const SerdNode* node) const char* serd_node_get_string(const SerdNode* node) { - return node->buf; + return node ? node->buf : NULL; } size_t serd_node_get_length(const SerdNode* node) { - return node->n_bytes; + return node ? node->n_bytes : 0; } SerdNodeFlags |