From b2e692cb13040e569b964b884867011cceb9d4c3 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/serd.h') diff --git a/serd/serd.h b/serd/serd.h index 139578c0..5bfcec1e 100644 --- a/serd/serd.h +++ b/serd/serd.h @@ -62,6 +62,13 @@ extern "C" { */ typedef struct SerdWorldImpl SerdWorld; +/** + Statement. + + A subject, predicate, and object, with optional graph context. +*/ +typedef struct SerdStatementImpl SerdStatement; + /** Environment. @@ -1149,6 +1156,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