The yason Reference Manual
Table of Contents
The yason Reference Manual
This is the yason Reference Manual, version 0.7.6,
generated automatically by Declt version 3.0 "Montgomery Scott"
on Tue Dec 22 15:32:33 2020 GMT+0.
1 Introduction
YASON
YASON is a Common Lisp library for encoding and decoding data in the
JSON
interchange format. JSON is used as a lightweight alternative to
XML. YASON has the sole purpose of encoding and decoding data and
does not impose any object model on the Common Lisp application that
uses it.
Please proceed to the Documentation
This project was maintained by https://github.com/hanshuebner/ until 2019.
2 Systems
The main system appears first, followed by any subsystem dependency.
2.1 yason
- Maintainer
Hans Huebner <hans@huebner.org>
- Author
Hans Huebner <hans@huebner.org>
- License
BSD
- Description
JSON parser/encoder
- Long Description
YASON is a Common Lisp library for encoding and
decoding data in the JSON interchange format. JSON is used as a
lightweight alternative to XML. YASON has the sole purpose of
encoding and decoding data and does not impose any object model on
the Common Lisp application that uses it.
- Version
0.7.6
- Dependencies
- alexandria
- trivial-gray-streams
- Source
yason.asd (file)
- Components
-
3 Files
Files are sorted by type and then listed depth-first from the systems
components trees.
3.1 Lisp
3.1.1 yason.asd
- Location
yason.asd
- Systems
yason (system)
- Packages
yason.system
3.1.2 yason/package.lisp
- Parent
yason (system)
- Location
package.lisp
- Packages
yason
3.1.3 yason/encode.lisp
- Dependency
package.lisp (file)
- Parent
yason (system)
- Location
encode.lisp
- Exported Definitions
-
- Internal Definitions
-
3.1.4 yason/parse.lisp
- Dependency
package.lisp (file)
- Parent
yason (system)
- Location
parse.lisp
- Exported Definitions
-
- Internal Definitions
-
4 Packages
Packages are listed by definition order.
4.1 yason.system
- Source
yason.asd
- Use List
- asdf/interface
- common-lisp
4.2 yason
- Source
package.lisp (file)
- Use List
common-lisp
- Exported Definitions
-
- Internal Definitions
-
5 Definitions
Definitions are sorted by export status, category, package, and then by
lexicographic order.
5.1 Exported definitions
5.1.1 Special variables
- Special Variable: *list-encoder*
-
The actual function used to encode a LIST.
Can be changed to encode ALISTs or PLISTs as dictionaries by
setting it to ENCODE-ALIST or ENCODE-PLIST.
- Package
yason
- Source
encode.lisp (file)
- Special Variable: *parse-json-arrays-as-vectors*
-
If set to a true value, JSON arrays will be parsed as vectors, not
as lists.
- Package
yason
- Source
parse.lisp (file)
- Special Variable: *parse-json-booleans-as-symbols*
-
If set to a true value, JSON booleans will be read as the symbols
TRUE and FALSE, not as T and NIL, respectively.
- Package
yason
- Source
parse.lisp (file)
- Special Variable: *parse-json-null-as-keyword*
-
If set to a true value, JSON nulls will be read as the keyword :NULL, not as NIL.
- Package
yason
- Source
parse.lisp (file)
- Special Variable: *parse-object-as*
-
Set to either :hash-table, :plist or :alist to determine the data
structure that objects are parsed to.
- Package
yason
- Source
parse.lisp (file)
- Special Variable: *parse-object-as-alist*
-
DEPRECATED, provided for backward compatibility
- Package
yason
- Source
parse.lisp (file)
- Special Variable: *parse-object-key-fn*
-
Function to call to convert a key string in a JSON array to a key
in the CL hash produced.
- Package
yason
- Source
parse.lisp (file)
- Special Variable: *symbol-key-encoder*
-
The actual function used to encode a SYMBOL when seen as a key.
You might want ENCODE-SYMBOL-AS-LOWERCASE here.
- Package
yason
- Source
encode.lisp (file)
5.1.2 Macros
- Macro: with-array () &body BODY
-
Open a JSON array, then run BODY. Inside the body,
ENCODE-ARRAY-ELEMENT must be called to encode elements to the opened
array. Must be called within an existing JSON encoder context, see
WITH-OUTPUT and WITH-OUTPUT-TO-STRING*.
- Package
yason
- Source
encode.lisp (file)
- Macro: with-object () &body BODY
-
Open a JSON object, then run BODY. Inside the body,
ENCODE-OBJECT-ELEMENT or WITH-OBJECT-ELEMENT must be called to encode
elements to the object. Must be called within an existing JSON
encoder context, see WITH-OUTPUT and WITH-OUTPUT-TO-STRING*.
- Package
yason
- Source
encode.lisp (file)
- Macro: with-object-element (KEY) &body BODY
-
Open a new encoding context to encode a JSON object element. KEY
is the key of the element. The value will be whatever BODY
serializes to the current JSON output context using one of the
stream encoding functions. This can be used to stream out nested
object structures.
- Package
yason
- Source
encode.lisp (file)
- Macro: with-output (STREAM &rest ARGS &key INDENT) &body BODY
-
Set up a JSON streaming encoder context on STREAM, then evaluate BODY.
- Package
yason
- Source
encode.lisp (file)
- Macro: with-output-to-string* (&rest ARGS &key INDENT STREAM-SYMBOL) &body BODY
-
Set up a JSON streaming encoder context, then evaluate BODY.
Return a string with the generated JSON output.
- Package
yason
- Source
encode.lisp (file)
5.1.3 Compiler macros
- Compiler Macro: encode-object-slots OBJECT RAW-SLOTS
-
Compiler macro to allow open-coding with encode-object-slots when slots are literal list.
- Package
yason
- Source
encode.lisp (file)
5.1.4 Functions
- Function: encode-alist OBJECT &optional STREAM
-
- Package
yason
- Source
encode.lisp (file)
- Function: encode-array-element OBJECT
-
Encode OBJECT as next array element to the last JSON array opened
with WITH-ARRAY in the dynamic context. OBJECT is encoded using the
ENCODE generic function, so it must be of a type for which an ENCODE
method is defined.
- Package
yason
- Source
encode.lisp (file)
- Function: encode-array-elements &rest OBJECTS
-
Encode OBJECTS, a list of JSON encodable objects, as array elements.
- Package
yason
- Source
encode.lisp (file)
- Function: encode-object-element KEY VALUE
-
Encode KEY and VALUE as object element to the last JSON object
opened with WITH-OBJECT in the dynamic context. KEY and VALUE are
encoded using the ENCODE generic function, so they both must be of a
type for which an ENCODE method is defined.
- Package
yason
- Source
encode.lisp (file)
- Function: encode-object-elements &rest ELEMENTS
-
Encode plist ELEMENTS as object elements.
- Package
yason
- Source
encode.lisp (file)
- Function: encode-object-slots OBJECT SLOTS
-
For each slot in SLOTS, encode that slot on OBJECT as an object element.
Equivalent to calling ENCODE-OBJECT-ELEMENT for each slot where the
key is the slot name, and the value is the (SLOT-VALUE OBJECT slot)
- Package
yason
- Source
encode.lisp (file)
- Function: encode-plain-list-to-array OBJECT STREAM
-
- Package
yason
- Source
encode.lisp (file)
- Function: encode-plist OBJECT &optional STREAM
-
- Package
yason
- Source
encode.lisp (file)
- Function: encode-symbol-as-lowercase KEY
-
Encodes a symbol KEY as a lowercase string.
Ensure that there’s no intentional lower-case character lost.
- Package
yason
- Source
encode.lisp (file)
- Function: parse INPUT &key OBJECT-KEY-FN OBJECT-AS JSON-ARRAYS-AS-VECTORS JSON-BOOLEANS-AS-SYMBOLS JSON-NULLS-AS-KEYWORD
-
Parse INPUT, which needs to be a string or a stream, as JSON.
Returns the lisp representation of the JSON structure parsed. The
keyword arguments can be used to override the parser settings as
defined by the respective special variables.
- Package
yason
- Source
parse.lisp (file)
5.1.5 Generic functions
- Generic Function: encode OBJECT &optional STREAM
-
Encode OBJECT to STREAM in JSON format. May be
specialized by applications to perform specific rendering. STREAM
defaults to *STANDARD-OUTPUT*.
- Package
yason
- Source
encode.lisp (file)
- Methods
- Method: encode (OBJECT (eql nil)) &optional STREAM
-
- Method: encode (OBJECT (eql t)) &optional STREAM
-
- Method: encode (OBJECT (eql null)) &optional STREAM
-
- Method: encode (OBJECT (eql false)) &optional STREAM
-
- Method: encode (OBJECT (eql true)) &optional STREAM
-
- Method: encode (OBJECT list) &optional STREAM
-
- Method: encode (OBJECT vector) &optional STREAM
-
- Method: encode (OBJECT hash-table) &optional STREAM
-
- Method: encode (OBJECT integer) &optional STREAM
-
- Method: encode (OBJECT float) &optional STREAM
-
- Method: encode (OBJECT ratio) &optional STREAM
-
- Method: encode (STRING string) &optional STREAM
-
- Generic Function: encode-object OBJECT
-
Generic function to encode an object. The default implementation
opens a new object encoding context and calls ENCODE-SLOTS on
the argument.
- Package
yason
- Source
encode.lisp (file)
- Methods
- Method: encode-object OBJECT
-
- Generic Function: encode-slots OBJECT
-
Generic function to encode object slots. It should be called in an
object encoding context. It uses PROGN combinatation with
MOST-SPECIFIC-LAST order, so that base class slots are encoded
before derived class slots.
- Package
yason
- Source
encode.lisp (file)
- Method Combination
progn (short method combination)
Options: :most-specific-last
- Generic Function: make-json-output-stream STREAM &key INDENT
-
- Package
yason
- Source
encode.lisp (file)
- Methods
- Method: make-json-output-stream STREAM &key INDENT
-
Create a JSON output stream with indentation enabled.
5.1.6 Conditions
- Condition: no-json-output-context ()
-
This condition is signalled when one of the stream
encoding function is used outside the dynamic context of a
WITH-OUTPUT or WITH-OUTPUT-TO-STRING* body.
- Package
yason
- Source
encode.lisp (file)
- Direct superclasses
error (condition)
5.2 Internal definitions
5.2.1 Constants
- Constant: +default-string-length+
-
Default length of strings that are created while reading json input.
- Package
yason
- Source
parse.lisp (file)
- Constant: +initial-array-size+
-
Initial size of JSON arrays read, they will grow as needed.
- Package
yason
- Source
parse.lisp (file)
5.2.2 Special variables
- Special Variable: *char-replacements*
-
- Package
yason
- Source
encode.lisp (file)
- Special Variable: *default-indent*
-
Set to T or an numeric indentation width in order to have YASON
indent its output by default.
- Package
yason
- Source
encode.lisp (file)
- Special Variable: *default-indent-width*
-
Default indentation width for output if indentation is selected
with no indentation width specified.
- Package
yason
- Source
encode.lisp (file)
- Special Variable: *json-output*
-
- Package
yason
- Source
encode.lisp (file)
5.2.3 Macros
- Macro: with-aggregate/object (STREAM OPENING-CHAR CLOSING-CHAR) &body BODY
-
Set up serialization context for aggregate serialization with the
object encoder.
- Package
yason
- Source
encode.lisp (file)
- Macro: with-aggregate/stream (BEGIN-CHAR END-CHAR) &body BODY
-
Set up context for aggregate serialization for the stream encoder.
- Package
yason
- Source
encode.lisp (file)
5.2.4 Functions
- Function: %parse-array INPUT ADD-ELEMENT-FUNCTION
-
Parse JSON array from input, calling ADD-ELEMENT-FUNCTION for each array element parsed.
- Package
yason
- Source
parse.lisp (file)
- Function: add-attribute TO KEY VALUE
-
- Package
yason
- Source
parse.lisp (file)
- Function: create-container ()
-
- Package
yason
- Source
parse.lisp (file)
- Function: encode-assoc-key/value KEY VALUE STREAM
-
- Package
yason
- Source
encode.lisp (file)
- Function: encode-key/value KEY VALUE STREAM
-
- Package
yason
- Source
encode.lisp (file)
- Function: encode-symbol-key-error KEY
-
- Package
yason
- Source
encode.lisp (file)
- Function: make-adjustable-string ()
-
Return an adjustable empty string, usable as a buffer for parsing strings and numbers.
- Package
yason
- Source
parse.lisp (file)
- Function: next-aggregate-element ()
-
- Package
yason
- Source
encode.lisp (file)
- Function: parse-array INPUT
-
- Package
yason
- Source
parse.lisp (file)
- Function: parse-constant INPUT
-
- Package
yason
- Source
parse.lisp (file)
- Function: parse-number INPUT
-
- Package
yason
- Source
parse.lisp (file)
- Function: parse-object INPUT
-
- Package
yason
- Source
parse.lisp (file)
- Function: parse-string INPUT
-
- Package
yason
- Source
parse.lisp (file)
- Function: parse-unicode-escape INPUT
-
- Package
yason
- Source
parse.lisp (file)
- Function: peek-char-skipping-whitespace INPUT &optional EOF-ERROR-P
-
- Package
yason
- Source
parse.lisp (file)
- Function: skip-whitespace INPUT
-
- Package
yason
- Source
parse.lisp (file)
- Function: unicode-char CODE
-
- Package
yason
- Source
encode.lisp (file)
- Function: unicode-code CHAR
-
- Package
yason
- Source
encode.lisp (file)
- Function: whitespace-p CHAR
-
- Package
yason
- Source
parse.lisp (file)
- Function: write-surrogate-pair-escape CODE STREAM
-
- Package
yason
- Source
encode.lisp (file)
5.2.5 Generic functions
- Generic Function: change-indentation STREAM OPERATOR
-
- Package
yason
- Source
encode.lisp (file)
- Methods
- Method: change-indentation STREAM OPERATOR
-
- Method: change-indentation (STREAM json-output-stream) OPERATOR
-
- Generic Function: indent OBJECT
-
- Package
yason
- Methods
- Method: indent (JSON-OUTPUT-STREAM json-output-stream)
-
automatically generated reader method
- Source
encode.lisp (file)
- Generic Function: indent% OBJECT
-
- Generic Function: (setf indent%) NEW-VALUE OBJECT
-
- Package
yason
- Methods
- Method: indent% (JSON-OUTPUT-STREAM json-output-stream)
-
automatically generated reader method
- Source
encode.lisp (file)
- Method: (setf indent%) NEW-VALUE (JSON-OUTPUT-STREAM json-output-stream)
-
automatically generated writer method
- Source
encode.lisp (file)
- Generic Function: indent-string OBJECT
-
- Generic Function: (setf indent-string) NEW-VALUE OBJECT
-
- Package
yason
- Methods
- Method: indent-string (JSON-OUTPUT-STREAM json-output-stream)
-
automatically generated reader method
- Source
encode.lisp (file)
- Method: (setf indent-string) NEW-VALUE (JSON-OUTPUT-STREAM json-output-stream)
-
automatically generated writer method
- Source
encode.lisp (file)
- Generic Function: key-string CONDITION
-
- Package
yason
- Methods
- Method: key-string (CONDITION expected-colon)
-
- Source
parse.lisp (file)
- Method: key-string (CONDITION cannot-convert-key)
-
- Source
parse.lisp (file)
- Generic Function: output-stream OBJECT
-
- Package
yason
- Methods
- Method: output-stream (JSON-OUTPUT-STREAM json-output-stream)
-
automatically generated reader method
- Source
encode.lisp (file)
- Generic Function: parse% INPUT
-
- Package
yason
- Source
parse.lisp (file)
- Methods
- Method: parse% (INPUT stream)
-
- Method: parse% (INPUT pathname)
-
- Method: parse% (INPUT string)
-
- Generic Function: stack OBJECT
-
- Generic Function: (setf stack) NEW-VALUE OBJECT
-
- Package
yason
- Methods
- Method: stack (JSON-OUTPUT-STREAM json-output-stream)
-
automatically generated reader method
- Source
encode.lisp (file)
- Method: (setf stack) NEW-VALUE (JSON-OUTPUT-STREAM json-output-stream)
-
automatically generated writer method
- Source
encode.lisp (file)
- Generic Function: write-delimiter CHAR STREAM
-
- Package
yason
- Source
encode.lisp (file)
- Methods
- Method: write-delimiter CHAR STREAM
-
- Method: write-delimiter CHAR (STREAM json-output-stream)
-
- Generic Function: write-indentation STREAM
-
- Package
yason
- Source
encode.lisp (file)
- Methods
- Method: write-indentation STREAM
-
- Method: write-indentation (STREAM json-output-stream)
-
5.2.6 Conditions
- Condition: cannot-convert-key ()
-
- Package
yason
- Source
parse.lisp (file)
- Direct superclasses
error (condition)
- Direct methods
key-string (method)
- Direct slots
- Slot: key-string
-
- Initargs
:key-string
- Readers
key-string (generic function)
- Condition: expected-colon ()
-
- Package
yason
- Source
parse.lisp (file)
- Direct superclasses
error (condition)
- Direct methods
key-string (method)
- Direct slots
- Slot: key-string
-
- Initargs
:key-string
- Readers
key-string (generic function)
5.2.7 Classes
- Class: json-output-stream ()
-
Objects of this class capture the state of a JSON stream encoder.
- Package
yason
- Source
encode.lisp (file)
- Direct superclasses
fundamental-character-output-stream (class)
- Direct methods
-
- Direct slots
- Slot: output-stream
-
- Initargs
:output-stream
- Readers
output-stream (generic function)
- Slot: stack
-
- Readers
stack (generic function)
- Writers
(setf stack) (generic function)
- Slot: indent
-
- Initargs
:indent
- Readers
-
- Writers
(setf indent%) (generic function)
- Slot: indent-string
-
- Initform
""
- Readers
indent-string (generic function)
- Writers
(setf indent-string) (generic function)
- Direct Default Initargs
Initarg | Value |
:indent | yason::*default-indent* |
Appendix A Indexes
A.1 Concepts
| Index Entry | | Section |
|
F | | |
| File, Lisp, yason.asd: | | The yason․asd file |
| File, Lisp, yason/encode.lisp: | | The yason/encode․lisp file |
| File, Lisp, yason/package.lisp: | | The yason/package․lisp file |
| File, Lisp, yason/parse.lisp: | | The yason/parse․lisp file |
|
L | | |
| Lisp File, yason.asd: | | The yason․asd file |
| Lisp File, yason/encode.lisp: | | The yason/encode․lisp file |
| Lisp File, yason/package.lisp: | | The yason/package․lisp file |
| Lisp File, yason/parse.lisp: | | The yason/parse․lisp file |
|
Y | | |
| yason.asd: | | The yason․asd file |
| yason/encode.lisp: | | The yason/encode․lisp file |
| yason/package.lisp: | | The yason/package․lisp file |
| yason/parse.lisp: | | The yason/parse․lisp file |
|
A.2 Functions
| Index Entry | | Section |
|
% | | |
| %parse-array : | | Internal functions |
|
( | | |
| (setf indent%) : | | Internal generic functions |
| (setf indent%) : | | Internal generic functions |
| (setf indent-string) : | | Internal generic functions |
| (setf indent-string) : | | Internal generic functions |
| (setf stack) : | | Internal generic functions |
| (setf stack) : | | Internal generic functions |
|
A | | |
| add-attribute : | | Internal functions |
|
C | | |
| change-indentation : | | Internal generic functions |
| change-indentation : | | Internal generic functions |
| change-indentation : | | Internal generic functions |
| Compiler Macro, encode-object-slots : | | Exported compiler macros |
| create-container : | | Internal functions |
|
E | | |
| encode : | | Exported generic functions |
| encode : | | Exported generic functions |
| encode : | | Exported generic functions |
| encode : | | Exported generic functions |
| encode : | | Exported generic functions |
| encode : | | Exported generic functions |
| encode : | | Exported generic functions |
| encode : | | Exported generic functions |
| encode : | | Exported generic functions |
| encode : | | Exported generic functions |
| encode : | | Exported generic functions |
| encode : | | Exported generic functions |
| encode : | | Exported generic functions |
| encode-alist : | | Exported functions |
| encode-array-element : | | Exported functions |
| encode-array-elements : | | Exported functions |
| encode-assoc-key/value : | | Internal functions |
| encode-key/value : | | Internal functions |
| encode-object : | | Exported generic functions |
| encode-object : | | Exported generic functions |
| encode-object-element : | | Exported functions |
| encode-object-elements : | | Exported functions |
| encode-object-slots : | | Exported compiler macros |
| encode-object-slots : | | Exported functions |
| encode-plain-list-to-array : | | Exported functions |
| encode-plist : | | Exported functions |
| encode-slots : | | Exported generic functions |
| encode-symbol-as-lowercase : | | Exported functions |
| encode-symbol-key-error : | | Internal functions |
|
F | | |
| Function, %parse-array : | | Internal functions |
| Function, add-attribute : | | Internal functions |
| Function, create-container : | | Internal functions |
| Function, encode-alist : | | Exported functions |
| Function, encode-array-element : | | Exported functions |
| Function, encode-array-elements : | | Exported functions |
| Function, encode-assoc-key/value : | | Internal functions |
| Function, encode-key/value : | | Internal functions |
| Function, encode-object-element : | | Exported functions |
| Function, encode-object-elements : | | Exported functions |
| Function, encode-object-slots : | | Exported functions |
| Function, encode-plain-list-to-array : | | Exported functions |
| Function, encode-plist : | | Exported functions |
| Function, encode-symbol-as-lowercase : | | Exported functions |
| Function, encode-symbol-key-error : | | Internal functions |
| Function, make-adjustable-string : | | Internal functions |
| Function, next-aggregate-element : | | Internal functions |
| Function, parse : | | Exported functions |
| Function, parse-array : | | Internal functions |
| Function, parse-constant : | | Internal functions |
| Function, parse-number : | | Internal functions |
| Function, parse-object : | | Internal functions |
| Function, parse-string : | | Internal functions |
| Function, parse-unicode-escape : | | Internal functions |
| Function, peek-char-skipping-whitespace : | | Internal functions |
| Function, skip-whitespace : | | Internal functions |
| Function, unicode-char : | | Internal functions |
| Function, unicode-code : | | Internal functions |
| Function, whitespace-p : | | Internal functions |
| Function, write-surrogate-pair-escape : | | Internal functions |
|
G | | |
| Generic Function, (setf indent%) : | | Internal generic functions |
| Generic Function, (setf indent-string) : | | Internal generic functions |
| Generic Function, (setf stack) : | | Internal generic functions |
| Generic Function, change-indentation : | | Internal generic functions |
| Generic Function, encode : | | Exported generic functions |
| Generic Function, encode-object : | | Exported generic functions |
| Generic Function, encode-slots : | | Exported generic functions |
| Generic Function, indent : | | Internal generic functions |
| Generic Function, indent% : | | Internal generic functions |
| Generic Function, indent-string : | | Internal generic functions |
| Generic Function, key-string : | | Internal generic functions |
| Generic Function, make-json-output-stream : | | Exported generic functions |
| Generic Function, output-stream : | | Internal generic functions |
| Generic Function, parse% : | | Internal generic functions |
| Generic Function, stack : | | Internal generic functions |
| Generic Function, write-delimiter : | | Internal generic functions |
| Generic Function, write-indentation : | | Internal generic functions |
|
I | | |
| indent : | | Internal generic functions |
| indent : | | Internal generic functions |
| indent% : | | Internal generic functions |
| indent% : | | Internal generic functions |
| indent-string : | | Internal generic functions |
| indent-string : | | Internal generic functions |
|
K | | |
| key-string : | | Internal generic functions |
| key-string : | | Internal generic functions |
| key-string : | | Internal generic functions |
|
M | | |
| Macro, with-aggregate/object : | | Internal macros |
| Macro, with-aggregate/stream : | | Internal macros |
| Macro, with-array : | | Exported macros |
| Macro, with-object : | | Exported macros |
| Macro, with-object-element : | | Exported macros |
| Macro, with-output : | | Exported macros |
| Macro, with-output-to-string* : | | Exported macros |
| make-adjustable-string : | | Internal functions |
| make-json-output-stream : | | Exported generic functions |
| make-json-output-stream : | | Exported generic functions |
| Method, (setf indent%) : | | Internal generic functions |
| Method, (setf indent-string) : | | Internal generic functions |
| Method, (setf stack) : | | Internal generic functions |
| Method, change-indentation : | | Internal generic functions |
| Method, change-indentation : | | Internal generic functions |
| Method, encode : | | Exported generic functions |
| Method, encode : | | Exported generic functions |
| Method, encode : | | Exported generic functions |
| Method, encode : | | Exported generic functions |
| Method, encode : | | Exported generic functions |
| Method, encode : | | Exported generic functions |
| Method, encode : | | Exported generic functions |
| Method, encode : | | Exported generic functions |
| Method, encode : | | Exported generic functions |
| Method, encode : | | Exported generic functions |
| Method, encode : | | Exported generic functions |
| Method, encode : | | Exported generic functions |
| Method, encode-object : | | Exported generic functions |
| Method, indent : | | Internal generic functions |
| Method, indent% : | | Internal generic functions |
| Method, indent-string : | | Internal generic functions |
| Method, key-string : | | Internal generic functions |
| Method, key-string : | | Internal generic functions |
| Method, make-json-output-stream : | | Exported generic functions |
| Method, output-stream : | | Internal generic functions |
| Method, parse% : | | Internal generic functions |
| Method, parse% : | | Internal generic functions |
| Method, parse% : | | Internal generic functions |
| Method, stack : | | Internal generic functions |
| Method, write-delimiter : | | Internal generic functions |
| Method, write-delimiter : | | Internal generic functions |
| Method, write-indentation : | | Internal generic functions |
| Method, write-indentation : | | Internal generic functions |
|
N | | |
| next-aggregate-element : | | Internal functions |
|
O | | |
| output-stream : | | Internal generic functions |
| output-stream : | | Internal generic functions |
|
P | | |
| parse : | | Exported functions |
| parse% : | | Internal generic functions |
| parse% : | | Internal generic functions |
| parse% : | | Internal generic functions |
| parse% : | | Internal generic functions |
| parse-array : | | Internal functions |
| parse-constant : | | Internal functions |
| parse-number : | | Internal functions |
| parse-object : | | Internal functions |
| parse-string : | | Internal functions |
| parse-unicode-escape : | | Internal functions |
| peek-char-skipping-whitespace : | | Internal functions |
|
S | | |
| skip-whitespace : | | Internal functions |
| stack : | | Internal generic functions |
| stack : | | Internal generic functions |
|
U | | |
| unicode-char : | | Internal functions |
| unicode-code : | | Internal functions |
|
W | | |
| whitespace-p : | | Internal functions |
| with-aggregate/object : | | Internal macros |
| with-aggregate/stream : | | Internal macros |
| with-array : | | Exported macros |
| with-object : | | Exported macros |
| with-object-element : | | Exported macros |
| with-output : | | Exported macros |
| with-output-to-string* : | | Exported macros |
| write-delimiter : | | Internal generic functions |
| write-delimiter : | | Internal generic functions |
| write-delimiter : | | Internal generic functions |
| write-indentation : | | Internal generic functions |
| write-indentation : | | Internal generic functions |
| write-indentation : | | Internal generic functions |
| write-surrogate-pair-escape : | | Internal functions |
|
A.3 Variables
| Index Entry | | Section |
|
* | | |
| *char-replacements* : | | Internal special variables |
| *default-indent* : | | Internal special variables |
| *default-indent-width* : | | Internal special variables |
| *json-output* : | | Internal special variables |
| *list-encoder* : | | Exported special variables |
| *parse-json-arrays-as-vectors* : | | Exported special variables |
| *parse-json-booleans-as-symbols* : | | Exported special variables |
| *parse-json-null-as-keyword* : | | Exported special variables |
| *parse-object-as* : | | Exported special variables |
| *parse-object-as-alist* : | | Exported special variables |
| *parse-object-key-fn* : | | Exported special variables |
| *symbol-key-encoder* : | | Exported special variables |
|
+ | | |
| +default-string-length+ : | | Internal constants |
| +initial-array-size+ : | | Internal constants |
|
C | | |
| Constant, +default-string-length+ : | | Internal constants |
| Constant, +initial-array-size+ : | | Internal constants |
|
I | | |
| indent : | | Internal classes |
| indent-string : | | Internal classes |
|
K | | |
| key-string : | | Internal conditions |
| key-string : | | Internal conditions |
|
O | | |
| output-stream : | | Internal classes |
|
S | | |
| Slot, indent : | | Internal classes |
| Slot, indent-string : | | Internal classes |
| Slot, key-string : | | Internal conditions |
| Slot, key-string : | | Internal conditions |
| Slot, output-stream : | | Internal classes |
| Slot, stack : | | Internal classes |
| Special Variable, *char-replacements* : | | Internal special variables |
| Special Variable, *default-indent* : | | Internal special variables |
| Special Variable, *default-indent-width* : | | Internal special variables |
| Special Variable, *json-output* : | | Internal special variables |
| Special Variable, *list-encoder* : | | Exported special variables |
| Special Variable, *parse-json-arrays-as-vectors* : | | Exported special variables |
| Special Variable, *parse-json-booleans-as-symbols* : | | Exported special variables |
| Special Variable, *parse-json-null-as-keyword* : | | Exported special variables |
| Special Variable, *parse-object-as* : | | Exported special variables |
| Special Variable, *parse-object-as-alist* : | | Exported special variables |
| Special Variable, *parse-object-key-fn* : | | Exported special variables |
| Special Variable, *symbol-key-encoder* : | | Exported special variables |
| stack : | | Internal classes |
|
A.4 Data types