31# define SERD_LIB_IMPORT __declspec(dllimport)
32# define SERD_LIB_EXPORT __declspec(dllexport)
34# define SERD_LIB_IMPORT __attribute__((visibility("default")))
35# define SERD_LIB_EXPORT __attribute__((visibility("default")))
38# define SERD_API SERD_LIB_EXPORT
40# define SERD_API SERD_LIB_IMPORT
321 {
NULL, 0}, {
NULL, 0}, {
NULL, 0}, {
NULL, 0}, {
NULL, 0}, {
NULL, 0}
371typedef size_t (*
SerdSink)(
const void* buf,
size_t len,
void* stream);
705 void (*free_handle)(
void*),
uint8_t a
Definition Spc_Cpu.h:141
CAdPlugDatabase::CRecord::RecordType type
Definition adplugdb.cpp:93
unsigned d
Definition inflate.c:940
register unsigned i
Definition inflate.c:1575
static const char * name
Definition pugl.h:1582
SERD_API SerdStatus serd_env_set_base_uri(SerdEnv *SERD_NONNULL env, const SerdNode *SERD_NULLABLE uri)
Set the current base URI.
SERD_API SerdStatus serd_env_set_prefix_from_strings(SerdEnv *SERD_NONNULL env, const uint8_t *SERD_NONNULL name, const uint8_t *SERD_NONNULL uri)
Set a namespace prefix.
SERD_API const SerdNode *SERD_NONNULL serd_env_get_base_uri(const SerdEnv *SERD_NONNULL env, SerdURI *SERD_NULLABLE out)
Get the current base URI.
SERD_API void serd_env_foreach(const SerdEnv *SERD_NONNULL env, SerdPrefixSink SERD_NONNULL func, void *SERD_NULLABLE handle)
Call func for each prefix defined in env.
SERD_API SerdStatus serd_env_set_prefix(SerdEnv *SERD_NONNULL env, const SerdNode *SERD_NONNULL name, const SerdNode *SERD_NONNULL uri)
SERD_API SerdEnv *SERD_ALLOCATED serd_env_new(const SerdNode *SERD_NULLABLE base_uri)
Create a new environment.
SERD_API SerdStatus serd_env_expand(const SerdEnv *SERD_NONNULL env, const SerdNode *SERD_NONNULL curie, SerdChunk *SERD_NONNULL uri_prefix, SerdChunk *SERD_NONNULL uri_suffix)
SERD_API bool serd_env_qualify(const SerdEnv *SERD_NONNULL env, const SerdNode *SERD_NONNULL uri, SerdNode *SERD_NONNULL prefix, SerdChunk *SERD_NONNULL suffix)
Qualify uri into a CURIE if possible.
SERD_API SerdNode serd_env_expand_node(const SerdEnv *SERD_NONNULL env, const SerdNode *SERD_NONNULL node)
SERD_API void serd_env_free(SerdEnv *SERD_NULLABLE env)
Free env.
SerdStatus(* SerdStatementSink)(void *SERD_NULLABLE handle, SerdStatementFlags flags, const SerdNode *SERD_NULLABLE graph, const SerdNode *SERD_NONNULL subject, const SerdNode *SERD_NONNULL predicate, const SerdNode *SERD_NONNULL object, const SerdNode *SERD_NULLABLE object_datatype, const SerdNode *SERD_NULLABLE object_lang)
Definition serd.h:632
SerdStatus(* SerdEndSink)(void *SERD_NULLABLE handle, const SerdNode *SERD_NONNULL node)
Definition serd.h:649
SerdStatus(* SerdPrefixSink)(void *SERD_NULLABLE handle, const SerdNode *SERD_NONNULL name, const SerdNode *SERD_NONNULL uri)
Definition serd.h:623
SerdStatus(* SerdErrorSink)(void *SERD_NULLABLE handle, const SerdError *SERD_NONNULL error)
Definition serd.h:607
SerdStatus(* SerdBaseSink)(void *SERD_NULLABLE handle, const SerdNode *SERD_NONNULL uri)
Definition serd.h:615
SERD_API SerdNode serd_node_new_uri_from_string(const uint8_t *SERD_NULLABLE str, const SerdURI *SERD_NULLABLE base, SerdURI *SERD_NULLABLE out)
Simple wrapper for serd_node_new_uri() to resolve a URI string.
SERD_API SerdNode serd_node_new_file_uri(const uint8_t *SERD_NONNULL path, const uint8_t *SERD_NULLABLE hostname, SerdURI *SERD_NULLABLE out, bool escape)
SERD_API SerdNode serd_node_from_string(SerdType type, const uint8_t *SERD_NULLABLE str)
SERD_API SerdNode serd_node_copy(const SerdNode *SERD_NULLABLE node)
static const SerdNode SERD_NODE_NULL
Definition serd.h:443
SERD_API SerdNode serd_node_new_uri_from_node(const SerdNode *SERD_NONNULL uri_node, const SerdURI *SERD_NULLABLE base, SerdURI *SERD_NULLABLE out)
Simple wrapper for serd_node_new_uri() to resolve a URI node.
SERD_API SerdNode serd_node_new_uri(const SerdURI *SERD_NONNULL uri, const SerdURI *SERD_NULLABLE base, SerdURI *SERD_NULLABLE out)
SERD_API void serd_node_free(SerdNode *SERD_NULLABLE node)
SERD_API SerdNode serd_node_new_blob(const void *SERD_NONNULL buf, size_t size, bool wrap_lines)
SERD_API SerdNode serd_node_new_integer(int64_t i)
Create a new node by serialising i into an xsd:integer string.
Definition node.c:348
SERD_API SerdNode serd_node_new_decimal(double d, unsigned frac_digits)
Definition node.c:293
SERD_API SerdNode serd_node_new_relative_uri(const SerdURI *SERD_NONNULL uri, const SerdURI *SERD_NULLABLE base, const SerdURI *SERD_NULLABLE root, SerdURI *SERD_NULLABLE out)
SERD_PURE_API bool serd_node_equals(const SerdNode *SERD_NONNULL a, const SerdNode *SERD_NONNULL b)
Return true iff a is equal to b.
SERD_API void serd_reader_add_blank_prefix(SerdReader *SERD_NONNULL reader, const uint8_t *SERD_NULLABLE prefix)
SERD_API void serd_reader_set_error_sink(SerdReader *SERD_NONNULL reader, SerdErrorSink SERD_NULLABLE error_sink, void *SERD_NULLABLE error_handle)
SERD_API SerdReader *SERD_ALLOCATED serd_reader_new(SerdSyntax syntax, void *SERD_NULLABLE handle, void(*SERD_NULLABLE free_handle)(void *SERD_NULLABLE), SerdBaseSink SERD_NULLABLE base_sink, SerdPrefixSink SERD_NULLABLE prefix_sink, SerdStatementSink SERD_NULLABLE statement_sink, SerdEndSink SERD_NULLABLE end_sink)
Create a new RDF reader.
SERD_API void serd_reader_free(SerdReader *SERD_NULLABLE reader)
Free reader.
SERD_API SerdStatus serd_reader_read_file_handle(SerdReader *SERD_NONNULL reader, FILE *SERD_NONNULL file, const uint8_t *SERD_NULLABLE name)
Read file.
SERD_API SerdStatus serd_reader_read_file(SerdReader *SERD_NONNULL reader, const uint8_t *SERD_NONNULL uri)
Read a file at a given uri.
SERD_API void serd_reader_set_strict(SerdReader *SERD_NONNULL reader, bool strict)
SERD_API void serd_reader_set_default_graph(SerdReader *SERD_NONNULL reader, const SerdNode *SERD_NULLABLE graph)
SERD_API SerdStatus serd_reader_read_string(SerdReader *SERD_NONNULL reader, const uint8_t *SERD_NONNULL utf8)
Read utf8.
SERD_PURE_API void *SERD_NULLABLE serd_reader_get_handle(const SerdReader *SERD_NONNULL reader)
Return the handle passed to serd_reader_new().
SERD_API SerdStatus serd_reader_read_chunk(SerdReader *SERD_NONNULL reader)
SERD_API SerdStatus serd_reader_end_stream(SerdReader *SERD_NONNULL reader)
Finish an incremental read from a file handle.
SERD_API SerdStatus serd_reader_start_stream(SerdReader *SERD_NONNULL reader, FILE *SERD_NONNULL file, const uint8_t *SERD_NULLABLE name, bool bulk)
size_t(* SerdSink)(const void *SERD_NONNULL buf, size_t len, void *SERD_NONNULL stream)
Sink function for raw string output.
Definition serd.h:351
SERD_API void *SERD_ALLOCATED serd_base64_decode(const uint8_t *SERD_NONNULL str, size_t len, size_t *SERD_NONNULL size)
SERD_API double serd_strtod(const char *SERD_NONNULL str, char *SERD_NONNULL *SERD_NULLABLE endptr)
SERD_API size_t serd_strlen(const uint8_t *SERD_NONNULL str, size_t *SERD_NULLABLE n_bytes, SerdNodeFlags *SERD_NULLABLE flags)
SERD_CONST_API const uint8_t *SERD_NONNULL serd_strerror(SerdStatus status)
Return a string describing a status code.
Definition string.c:32
SERD_API SerdStatus serd_uri_parse(const uint8_t *SERD_NONNULL utf8, SerdURI *SERD_NONNULL out)
Parse utf8, writing result to out.
SERD_API size_t serd_uri_serialise_relative(const SerdURI *SERD_NONNULL uri, const SerdURI *SERD_NULLABLE base, const SerdURI *SERD_NULLABLE root, SerdSink SERD_NONNULL sink, void *SERD_NONNULL stream)
SERD_API uint8_t *SERD_NULLABLE serd_file_uri_parse(const uint8_t *SERD_NONNULL uri, uint8_t *SERD_NONNULL *SERD_NULLABLE hostname)
SERD_API void serd_uri_resolve(const SerdURI *SERD_NONNULL r, const SerdURI *SERD_NONNULL base, SerdURI *SERD_NONNULL t)
SERD_API size_t serd_uri_serialise(const SerdURI *SERD_NONNULL uri, SerdSink SERD_NONNULL sink, void *SERD_NONNULL stream)
Serialise uri with a series of calls to sink.
SERD_PURE_API bool serd_uri_string_has_scheme(const uint8_t *SERD_NULLABLE utf8)
Return true iff utf8 starts with a valid URI scheme.
static const SerdURI SERD_URI_NULL
Definition serd.h:361
SERD_API SerdStatus serd_writer_set_root_uri(SerdWriter *SERD_NONNULL writer, const SerdNode *SERD_NULLABLE uri)
SERD_API void serd_writer_chop_blank_prefix(SerdWriter *SERD_NONNULL writer, const uint8_t *SERD_NULLABLE prefix)
SERD_API SerdStatus serd_writer_write_statement(SerdWriter *SERD_NONNULL writer, SerdStatementFlags flags, const SerdNode *SERD_NULLABLE graph, const SerdNode *SERD_NONNULL subject, const SerdNode *SERD_NONNULL predicate, const SerdNode *SERD_NONNULL object, const SerdNode *SERD_NULLABLE datatype, const SerdNode *SERD_NULLABLE lang)
SERD_API size_t serd_chunk_sink(const void *SERD_NONNULL buf, size_t len, void *SERD_NONNULL stream)
SERD_API SerdStatus serd_writer_set_prefix(SerdWriter *SERD_NONNULL writer, const SerdNode *SERD_NONNULL name, const SerdNode *SERD_NONNULL uri)
SERD_API SerdStatus serd_writer_finish(SerdWriter *SERD_NONNULL writer)
SERD_API void serd_writer_set_error_sink(SerdWriter *SERD_NONNULL writer, SerdErrorSink SERD_NONNULL error_sink, void *SERD_NULLABLE error_handle)
SERD_API SerdWriter *SERD_ALLOCATED serd_writer_new(SerdSyntax syntax, SerdStyle style, SerdEnv *SERD_NONNULL env, const SerdURI *SERD_NULLABLE base_uri, SerdSink SERD_NONNULL ssink, void *SERD_NULLABLE stream)
Create a new RDF writer.
SERD_API void serd_writer_free(SerdWriter *SERD_NULLABLE writer)
Free writer.
SERD_API size_t serd_file_sink(const void *SERD_NONNULL buf, size_t len, void *SERD_NONNULL stream)
SERD_API SerdStatus serd_writer_set_base_uri(SerdWriter *SERD_NONNULL writer, const SerdNode *SERD_NULLABLE uri)
SERD_API uint8_t *SERD_NULLABLE serd_chunk_sink_finish(SerdChunk *SERD_NONNULL stream)
SERD_PURE_API SerdEnv *SERD_NONNULL serd_writer_get_env(SerdWriter *SERD_NONNULL writer)
Return the env used by writer.
SERD_API SerdStatus serd_writer_end_anon(SerdWriter *SERD_NONNULL writer, const SerdNode *SERD_NULLABLE node)
SerdStatus
Return status code.
Definition serd.h:100
SerdSyntax
RDF syntax type.
Definition serd.h:113
SERD_API const uint8_t * serd_uri_to_path(const uint8_t *uri)
Definition uri.c:29
struct SerdReaderImpl SerdReader
Streaming parser that reads a text stream and writes to a statement sink.
Definition serd.h:94
uint32_t SerdStatementFlags
Bitwise OR of SerdStatementFlag values.
Definition serd.h:133
SerdType
Definition serd.h:146
SerdStatementFlag
Flags indicating inline abbreviation information for a statement.
Definition serd.h:121
struct SerdWriterImpl SerdWriter
Streaming serialiser that writes a text stream as statements are pushed.
Definition serd.h:97
SerdStyle
Definition serd.h:246
struct SerdEnvImpl SerdEnv
Lexical environment for relative URIs or CURIEs (base URI and namespaces).
Definition serd.h:91
SerdNodeFlag
Flags indicating certain string properties relevant to serialisation.
Definition serd.h:190
uint32_t SerdNodeFlags
Bitwise OR of SerdNodeFlag values.
Definition serd.h:196
@ SERD_ERR_ID_CLASH
Encountered clashing blank node IDs.
Definition serd.h:107
@ SERD_ERR_BAD_ARG
Invalid argument.
Definition serd.h:105
@ SERD_ERR_BAD_SYNTAX
Invalid syntax.
Definition serd.h:104
@ SERD_ERR_INTERNAL
Unexpected internal error (should not happen).
Definition serd.h:109
@ SERD_FAILURE
Non-fatal failure.
Definition serd.h:102
@ SERD_ERR_NOT_FOUND
Not found.
Definition serd.h:106
@ SERD_ERR_BAD_CURIE
Invalid CURIE (e.g. prefix does not exist).
Definition serd.h:108
@ SERD_ERR_UNKNOWN
Unknown error.
Definition serd.h:103
@ SERD_SUCCESS
No error.
Definition serd.h:101
@ SERD_NTRIPLES
Line-based triples http://www.w3.org/TR/n-triples/.
Definition serd.h:115
@ SERD_TURTLE
Terse triples http://www.w3.org/TR/turtle.
Definition serd.h:114
@ SERD_NOTHING
Definition serd.h:152
@ SERD_URI
Definition serd.h:169
@ SERD_CURIE
Definition serd.h:177
@ SERD_LITERAL
Definition serd.h:159
@ SERD_BLANK
Definition serd.h:186
@ SERD_EMPTY_S
Empty blank node subject.
Definition serd.h:122
@ SERD_LIST_CONT
Continuation of list.
Definition serd.h:129
@ SERD_EMPTY_O
Empty blank node object.
Definition serd.h:123
@ SERD_ANON_S_BEGIN
Start of anonymous subject.
Definition serd.h:124
@ SERD_LIST_O_BEGIN
Start of list object.
Definition serd.h:128
@ SERD_ANON_O_BEGIN
Start of anonymous object.
Definition serd.h:125
@ SERD_ANON_CONT
Continuation of anonymous node.
Definition serd.h:126
@ SERD_LIST_S_BEGIN
Start of list subject.
Definition serd.h:127
@ SERD_STYLE_BULK
Write output in pages.
Definition serd.h:251
@ SERD_STYLE_ASCII
Escape all non-ASCII characters.
Definition serd.h:248
@ SERD_STYLE_RESOLVED
Resolve URIs against base URI.
Definition serd.h:249
@ SERD_STYLE_CURIED
Shorten URIs into CURIEs.
Definition serd.h:250
@ SERD_STYLE_ABBREVIATED
Abbreviate triples when possible.
Definition serd.h:247
@ SERD_HAS_QUOTE
Contains quotes ('"').
Definition serd.h:192
@ SERD_HAS_NEWLINE
Contains line breaks ('\n' or '\r').
Definition serd.h:191
void * object
Definition jmemsys.h:50
float out
Definition lilv_test.c:1461
unsigned int uint32_t
Definition mid.cpp:100
unsigned char uint8_t
Definition mid.cpp:98
An unterminated string fragment.
Definition serd.h:208
size_t len
Length of chunk in bytes.
Definition serd.h:210
const uint8_t *SERD_NULLABLE buf
Start of chunk.
Definition serd.h:209
An error description.
Definition serd.h:214
const char *SERD_NONNULL fmt
Printf-style format string.
Definition serd.h:219
unsigned col
Column in file with error.
Definition serd.h:218
const uint8_t *SERD_NULLABLE filename
File with error.
Definition serd.h:216
unsigned line
Line in file with error or 0.
Definition serd.h:217
va_list *SERD_NONNULL args
Arguments for fmt.
Definition serd.h:220
A syntactic RDF node.
Definition serd.h:199
const uint8_t *SERD_NULLABLE buf
Value string.
Definition serd.h:200
size_t n_bytes
Size in bytes (excluding null).
Definition serd.h:201
SerdNodeFlags flags
Node flags (string properties).
Definition serd.h:203
SerdType type
Node type.
Definition serd.h:204
size_t n_chars
String length (excluding null).
Definition serd.h:202
struct zdirent * file
Definition win32.c:1500