From b085fe7aa38e5e2caf82b1fec6b7e6094779dd5a Mon Sep 17 00:00:00 2001 From: David Robillard Date: Mon, 1 Mar 2021 19:38:01 -0500 Subject: Add SerdSink interface and hide implementations --- src/sink.h | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) create mode 100644 src/sink.h (limited to 'src/sink.h') diff --git a/src/sink.h b/src/sink.h new file mode 100644 index 00000000..e0f99a53 --- /dev/null +++ b/src/sink.h @@ -0,0 +1,34 @@ +/* + Copyright 2011-2020 David Robillard + + Permission to use, copy, modify, and/or distribute this software for any + purpose with or without fee is hereby granted, provided that the above + copyright notice and this permission notice appear in all copies. + + THIS SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES + WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR + ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES + WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN + ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF + OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. +*/ + +#ifndef SERD_SINK_H +#define SERD_SINK_H + +#include "serd/serd.h" + +/** + An interface that receives a stream of RDF data. +*/ +struct SerdSinkImpl { + void* handle; + SerdFreeFunc free_handle; + SerdBaseFunc base; + SerdPrefixFunc prefix; + SerdStatementFunc statement; + SerdEndFunc end; +}; + +#endif // SERD_SINK_H -- cgit v1.2.1