From 3395e65e8b0c5edb107019d1d8345dac71f5d86c Mon Sep 17 00:00:00 2001 From: David Robillard Date: Sun, 3 Jun 2018 19:24:59 +0200 Subject: Add SerdStatement --- serd/serd.h | 48 ++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 48 insertions(+) (limited to 'serd') diff --git a/serd/serd.h b/serd/serd.h index da6fbc7e..67ad5d6b 100644 --- a/serd/serd.h +++ b/serd/serd.h @@ -61,6 +61,13 @@ extern "C" { */ typedef struct SerdWorldImpl SerdWorld; +/** + Statement. + + A subject, predicate, and object, with optional graph context. +*/ +typedef struct SerdStatementImpl SerdStatement; + /** Environment. @@ -1160,6 +1167,47 @@ SERD_API SerdStatus serd_writer_finish(SerdWriter* writer); +/** + @} + @name Statement + @{ +*/ + +/** + Return the given node in `statement`. +*/ +SERD_API +const SerdNode* +serd_statement_get_node(const SerdStatement* statement, SerdField field); + +/** + Return the subject in `statement`. +*/ +SERD_API +const SerdNode* +serd_statement_get_subject(const SerdStatement* statement); + +/** + Return the predicate in `statement`. +*/ +SERD_API +const SerdNode* +serd_statement_get_predicate(const SerdStatement* statement); + +/** + Return the object in `statement`. +*/ +SERD_API +const SerdNode* +serd_statement_get_object(const SerdStatement* statement); + +/** + Return the graph in `statement`. +*/ +SERD_API +const SerdNode* +serd_statement_get_graph(const SerdStatement* statement); + /** @} @} -- cgit v1.2.1