Package for optional BSON read-print functionality. Uses named-readtables for *readtable*
manipulation.
Defines read-macros for #d()
(literal <document>
) and for #i()
(literal <document>
).
Also defines pprint
int behaviour (for consistent read-print equivalence) for #d()
and #i()
read-macros in the bson-syntax
readtable.
All of them are just optional. If you don't like, feel free to not use it =]
Usage
* (make-instance '<regex> :pattern "^abc$" :options "i")
; => #/^abc$/i
* (make-instance '<object-id>)
; => #i(90E08055616E64726568310C67E3D1)
* (make-document)
; => #d("_id" #i(9CE08055616E64726568310C68E3D1))
* (enable-printers)
; => NIL
* (make-instance '<regex> :pattern "^abc$" :options "i")
; => #/^abc$/i
* (make-instance '<object-id>)
; => #i(B4E08055616E64726568310C69E3D1)
* (make-document)
; => #d("_id" #i(B8E08055616E64726568310C6AE3D1))
* (named-readtables:in-readtable bson-syntax)
; big alist of readtables
* #/asdf/li
; => #/asdf/il
* #i(B4E08055616E64726568310C69E3D1)
; => #i(B4E08055616E64726568310C69E3D1)
* #d("my" "doc")
; => #d("my" "doc")
Printer
No node with name
pprint-bson-document
.No node with name
pprint-object-id
.No node with name
enable-bson-document-printer
.No node with name
enable-object-id-printer
.No node with name
enable-printers
.No node with name
disable-bson-document-printer
.No node with name
disable-object-id-printer
.No node with name
disable-printers
.Reader
No node with name
bson-document-reader
.No node with name
object-id-reader
.No node with name
bson-document-literal
.No node with name
repeated-keys-p
.