aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--serd/serd.h7
-rw-r--r--src/env.c9
2 files changed, 16 insertions, 0 deletions
diff --git a/serd/serd.h b/serd/serd.h
index aaf66549..a31d6e64 100644
--- a/serd/serd.h
+++ b/serd/serd.h
@@ -1004,6 +1004,13 @@ serd_env_foreach(const SerdEnv* env,
void* handle);
/**
+ Write all prefixes in `env` to `sink`.
+*/
+SERD_API
+void
+serd_env_write_prefixes(const SerdEnv* env, const SerdSink* sink);
+
+/**
@}
@name Sink
@{
diff --git a/src/env.c b/src/env.c
index da8d2a36..fa949acf 100644
--- a/src/env.c
+++ b/src/env.c
@@ -326,3 +326,12 @@ serd_env_foreach(const SerdEnv* env,
func(handle, env->prefixes[i].name, env->prefixes[i].uri);
}
}
+
+void
+serd_env_write_prefixes(const SerdEnv* env, const SerdSink* sink)
+{
+ for (size_t i = 0; i < env->n_prefixes; ++i) {
+ serd_sink_write_prefix(
+ sink, env->prefixes[i].name, env->prefixes[i].uri);
+ }
+}