summaryrefslogtreecommitdiff
path: root/encoding/json/README
diff options
context:
space:
mode:
authorLassi Pulkkinen <lassi@pulk.fi>2024-10-31 03:11:21 +0200
committerLassi Pulkkinen <lassi@pulk.fi>2024-10-31 03:51:35 +0200
commitae44478b30d890fe0fb04022f44d474dcdcc3f9d (patch)
tree5f462459ae4b47d22114eed717d1382d08cf4dfe /encoding/json/README
Initial commit (import old repo)HEADmain
Diffstat (limited to 'encoding/json/README')
-rw-r--r--encoding/json/README15
1 files changed, 15 insertions, 0 deletions
diff --git a/encoding/json/README b/encoding/json/README
new file mode 100644
index 0000000..fa917d5
--- /dev/null
+++ b/encoding/json/README
@@ -0,0 +1,15 @@
+This module provides an implementation of the JavaScript Object Notation (JSON)
+format, as defined by RFC 8259. Note that several other, incompatible
+specifications exist. This implementation does not include any extensions; only
+features which are strictly required by the spec are implemented.
+
+A lexer for JSON values is provided, which may be initialized with [[lex]] and
+provides tokens via [[next]], and which uses a relatively small amount of memory
+and provides relatively few guarantees regarding the compliance of the input with
+the JSON grammar.
+
+Additionally, the [[value]] type is provided to store any value JSON value, as
+well as helpers like [[newobject]], [[get]], and [[set]]. One can load a JSON
+value from an input stream into a heap-allocated [[value]] via [[load]], which
+enforces all of JSON's grammar constraints and returns an object which must be
+freed with [[finish]].