yason
yason copied to clipboard
Common Lisp JSON serializer written with simplicity in mind
For some more flexibility, it would be neat to have another method `encode` whith the eql-specifier `cl:null`. This is also used in some other json parsers. ```lisp (defmethod encode ((object...
Yason does not encode a lisp pure cons (a pure cons is a cons whose cdr is not a cons) into json correctly. For example, an attempt to encode `(1...
I checked the Yason parser against the test suite from JSON.org and it shows several deficencies. Therefore I added a `*parse-strict*` parameter so that the user has the choice between...
Since nil has many meanings, it would be nice if the JSON encoding of nil can be customized by the user. This also enables transparent decoding/encoding of empty objects when...
Fixes https://github.com/phmarek/yason/issues/72
I use Yason extensively in my personal codebases and https://github.com/phmarek/yason/commit/7daea breaks all sorts of code that has been stable for years: before, yason would default to `*standard-output*` for encoding and...
I am writing a plist DSL for possibly non-technical users that is translated via yason to a JSON specification. Simple example: ``` '(:title "foo") (:command my-command) ...) ``` where `my-command`...
Implements https://github.com/phmarek/yason/issues/66. The current state of the library makes the incremental encoder a completely different world from ENCODE. This makes it harder to extend YASON's encoding system because you have...
I wonder if it would make sense to add a default method like this to YASON:ENCODE: ```lisp (defmethod yason:encode (o &optional s) (yason:with-output (s) (yason:encode-object o))) ``` This way, ENCODE...
``` (setf yason:*parse-object-as* :alist) (yason:parse "{\"foo\":0,\"bar\":1}") ``` returns `(("bar" . 1) ("foo" . 0))` Ordering of original list is not preserved.