LMMS
Loading...
Searching...
No Matches
serd.h
Go to the documentation of this file.
1/*
2 Copyright 2011-2016 David Robillard <http://drobilla.net>
3
4 Permission to use, copy, modify, and/or distribute this software for any
5 purpose with or without fee is hereby granted, provided that the above
6 copyright notice and this permission notice appear in all copies.
7
8 THIS SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
9 WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
10 MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
11 ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
12 WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
13 ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
14 OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
15*/
16
20
21#ifndef SERD_SERD_H
22#define SERD_SERD_H
23
24#include <stdarg.h>
25#include <stddef.h>
26#include <stdint.h>
27#include <stdio.h>
28
29#ifdef SERD_SHARED
30# ifdef _WIN32
31# define SERD_LIB_IMPORT __declspec(dllimport)
32# define SERD_LIB_EXPORT __declspec(dllexport)
33# else
34# define SERD_LIB_IMPORT __attribute__((visibility("default")))
35# define SERD_LIB_EXPORT __attribute__((visibility("default")))
36# endif
37# ifdef SERD_INTERNAL
38# define SERD_API SERD_LIB_EXPORT
39# else
40# define SERD_API SERD_LIB_IMPORT
41# endif
42#else
43# define SERD_API
44#endif
45
46#ifdef __cplusplus
47extern "C" {
48#else
49# include <stdbool.h>
50#endif
51
57
64typedef struct SerdEnvImpl SerdEnv;
65
73
83
98
102typedef enum {
108
114} SerdSyntax;
115
129
134
144typedef enum {
151
158
168
177
187
188} SerdType;
189
193typedef enum {
197
202
206typedef struct {
207 const uint8_t* buf;
208 size_t n_bytes;
209 size_t n_chars;
211 SerdType type;
212} SerdNode;
213
217typedef struct {
218 const uint8_t* buf;
219 size_t len;
220} SerdChunk;
221
225typedef struct {
226 SerdStatus status;
228 unsigned line;
229 unsigned col;
230 const char* fmt;
231 va_list* args;
232} SerdError;
233
241typedef struct {
242 SerdChunk scheme;
243 SerdChunk authority;
244 SerdChunk path_base;
245 SerdChunk path;
247 SerdChunk fragment;
248} SerdURI;
249
265
270
275const uint8_t*
277
286size_t
287serd_strlen(const uint8_t* str, size_t* n_bytes, SerdNodeFlags* flags);
288
297double
298serd_strtod(const char* str, char** endptr);
299
311void*
312serd_base64_decode(const uint8_t* str, size_t len, size_t* size);
313
319
320static const SerdURI SERD_URI_NULL = {
321 {NULL, 0}, {NULL, 0}, {NULL, 0}, {NULL, 0}, {NULL, 0}, {NULL, 0}
322};
323
332const uint8_t*
334
344uint8_t*
345serd_file_uri_parse(const uint8_t* uri, uint8_t** hostname);
346
351bool
353
359serd_uri_parse(const uint8_t* utf8, SerdURI* out);
360
365void
366serd_uri_resolve(const SerdURI* uri, const SerdURI* base, SerdURI* out);
367
371typedef size_t (*SerdSink)(const void* buf, size_t len, void* stream);
372
377size_t
378serd_uri_serialise(const SerdURI* uri, SerdSink sink, void* stream);
379
388size_t
390 const SerdURI* base,
391 const SerdURI* root,
393 void* stream);
394
400
401static const SerdNode SERD_NODE_NULL = { NULL, 0, 0, 0, SERD_NOTHING };
402
411
419serd_node_copy(const SerdNode* node);
420
425bool
426serd_node_equals(const SerdNode* a, const SerdNode* b);
427
434 const SerdURI* base,
435 SerdURI* out);
436
443 const SerdURI* base,
444 SerdURI* out);
445
459 const uint8_t* hostname,
460 SerdURI* out,
461 bool escape);
462
475serd_node_new_uri(const SerdURI* uri, const SerdURI* base, SerdURI* out);
476
492 const SerdURI* base,
493 const SerdURI* root,
494 SerdURI* out);
495
513serd_node_new_decimal(double d, unsigned frac_digits);
514
520serd_node_new_integer(int64_t i);
521
533serd_node_new_blob(const void* buf, size_t size, bool wrap_lines);
534
542void
544
550
557typedef SerdStatus (*SerdErrorSink)(void* handle,
558 const SerdError* error);
559
565typedef SerdStatus (*SerdBaseSink)(void* handle,
566 const SerdNode* uri);
567
573typedef SerdStatus (*SerdPrefixSink)(void* handle,
574 const SerdNode* name,
575 const SerdNode* uri);
576
582typedef SerdStatus (*SerdStatementSink)(void* handle,
583 SerdStatementFlags flags,
584 const SerdNode* graph,
585 const SerdNode* subject,
586 const SerdNode* predicate,
587 const SerdNode* object,
588 const SerdNode* object_datatype,
589 const SerdNode* object_lang);
590
598typedef SerdStatus (*SerdEndSink)(void* handle,
599 const SerdNode* node);
600
606
611SerdEnv*
612serd_env_new(const SerdNode* base_uri);
613
618void
620
625const SerdNode*
627 SerdURI* out);
628
635 const SerdNode* uri);
636
643 const SerdNode* name,
644 const SerdNode* uri);
645
652 const uint8_t* name,
653 const uint8_t* uri);
654
659bool
660serd_env_qualify(const SerdEnv* env,
661 const SerdNode* uri,
662 SerdNode* prefix,
663 SerdChunk* suffix);
664
670serd_env_expand(const SerdEnv* env,
671 const SerdNode* curie,
672 SerdChunk* uri_prefix,
673 SerdChunk* uri_suffix);
674
681 const SerdNode* node);
682
687void
688serd_env_foreach(const SerdEnv* env,
689 SerdPrefixSink func,
690 void* handle);
691
697
704 void* handle,
705 void (*free_handle)(void*),
706 SerdBaseSink base_sink,
707 SerdPrefixSink prefix_sink,
708 SerdStatementSink statement_sink,
709 SerdEndSink end_sink);
710
719void
720serd_reader_set_strict(SerdReader* reader, bool strict);
721
729void
731 SerdErrorSink error_sink,
732 void* handle);
733
738void*
740
751void
753 const uint8_t* prefix);
754
763void
765 const SerdNode* graph);
766
773 const uint8_t* uri);
774
786 FILE* file,
787 const uint8_t* name,
788 bool bulk);
789
801
808
815 FILE* file,
816 const uint8_t* name);
817
824
829void
831
837
845 SerdEnv* env,
846 const SerdURI* base_uri,
848 void* stream);
849
854void
856
861SerdEnv*
863
871size_t
872serd_file_sink(const void* buf, size_t len, void* stream);
873
883size_t
884serd_chunk_sink(const void* buf, size_t len, void* stream);
885
893uint8_t*
895
903void
905 SerdErrorSink error_sink,
906 void* handle);
907
912void
914 const uint8_t* prefix);
915
924 const SerdNode* uri);
925
939 const SerdNode* uri);
940
949 const SerdNode* name,
950 const SerdNode* uri);
951
960 SerdStatementFlags flags,
961 const SerdNode* graph,
962 const SerdNode* subject,
963 const SerdNode* predicate,
964 const SerdNode* object,
965 const SerdNode* object_datatype,
966 const SerdNode* object_lang);
967
976 const SerdNode* node);
977
984
989
990#ifdef __cplusplus
991} /* extern "C" */
992#endif
993
994#endif /* SERD_SERD_H */
#define NULL
Definition CarlaBridgeFormat.cpp:30
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
#define SERD_API
Definition serd.h:35
static size_t sink(const void *buf, size_t len, SerdWriter *writer)
Definition writer.c:177
static SordNode * uri(SordWorld *world, int num)
Definition sord_test.c:47
static const SerdStyle style
Definition sratom.c:36
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
Definition env.c:30
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
Definition reader.h:58
Definition serd.h:230
Definition writer.c:94
b
Definition crypt.c:628
int query
Definition extract.c:1035
int error
Definition extract.c:1038
ulg size
Definition extract.c:2350
struct zdirent * file
Definition win32.c:1500