From 7519da91b22e5c5898f522b897e1e77e7f0734b3 Mon Sep 17 00:00:00 2001 From: David Robillard Date: Sun, 4 Feb 2018 15:33:36 +0100 Subject: Use opaque node API --- src/node.c | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) (limited to 'src/node.c') diff --git a/src/node.c b/src/node.c index c6f5841a..8b846aab 100644 --- a/src/node.c +++ b/src/node.c @@ -31,6 +31,12 @@ # endif #endif +char* +serd_node_buffer(SerdNode* node) +{ + return (char*)(node + 1); +} + SerdNode serd_node_from_string(SerdType type, const char* str) { @@ -113,8 +119,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; } @@ -380,13 +387,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 -- cgit v1.2.1