summaryrefslogtreecommitdiff
path: root/doc/reference/json.adoc
diff options
context:
space:
mode:
authorJohn Turner <jturner.usa@gmail.com>2025-09-14 00:16:10 -0400
committerJohn Turner <jturner.usa@gmail.com>2025-09-14 00:16:10 -0400
commitefcea3a80da7c4479d5fe168435ecc9fd06bdc72 (patch)
tree5cb0177e17b1b00a177f2e830e809f606334571b /doc/reference/json.adoc
downloadsqlite-kv-bench-efcea3a80da7c4479d5fe168435ecc9fd06bdc72.tar.gz
Squashed 'subprojects/boost-sqlite/' content from commit 3378e35
git-subtree-dir: subprojects/boost-sqlite git-subtree-split: 3378e353705271e569cf4ba15c467b840a39798c
Diffstat (limited to 'doc/reference/json.adoc')
-rw-r--r--doc/reference/json.adoc28
1 files changed, 28 insertions, 0 deletions
diff --git a/doc/reference/json.adoc b/doc/reference/json.adoc
new file mode 100644
index 0000000..1c15f52
--- /dev/null
+++ b/doc/reference/json.adoc
@@ -0,0 +1,28 @@
+== `sqlite/json.hpp`
+
+The json header provides integration with boost/json.
+
+[source,cpp]
+----
+
+// The subtype value used by the sqlite json extension. See the [sqlite reference](https://www.sqlite.org/json1.html)
+constexpr int json_subtype = static_cast<int>('J');
+
+// Allow json to be used as a result from functions or vtables
+void tag_invoke(const struct set_result_tag &, sqlite3_context * ctx, const json::value & value);
+
+// Check if the value or field is a json.
+bool is_json(const value & v);
+bool is_json(const field & f);
+
+//Convert the value or field to a json.
+json::value as_json(const value & v, json::storage_ptr ptr = {});
+json::value as_json(const field & f, json::storage_ptr ptr = {});
+
+// Allow conversions to boost::json::value
+void tag_invoke( const json::value_from_tag &, json::value& val, const value & f);
+void tag_invoke( const json::value_from_tag &, json::value& val, const field & f);
+void tag_invoke( const json::value_from_tag &, json::value& val, resultset && rs);
+----
+
+