The com.inuoe.jzon Reference Manual

This is the com.inuoe.jzon Reference Manual, version 1.1.2, generated automatically by Declt version 4.0 beta 2 "William Riker" on Mon Feb 26 16:50:04 2024 GMT+0.

Table of Contents


1 Introduction


2 Systems

The main system appears first, followed by any subsystem dependency.


2.1 com.inuoe.jzon

A correct and safe(er) JSON RFC 8259 parser with sane defaults.

Author

Wilfredo Velázquez-Rodríguez <>

License

MIT

Version

1.1.2

Dependencies
  • closer-mop (system).
  • flexi-streams (system).
  • float-features (system)., for feature (:not :ecl)
  • trivial-gray-streams (system).
  • uiop (system).
Source

com.inuoe.jzon.asd.

Child Components

3 Files

Files are sorted by type and then listed depth-first from the systems components trees.


3.1 Lisp


3.1.1 com.inuoe.jzon/com.inuoe.jzon.asd

Source

com.inuoe.jzon.asd.

Parent Component

com.inuoe.jzon (system).

ASDF Systems

com.inuoe.jzon.


3.1.2 com.inuoe.jzon/eisel-lemire.lisp

Source

com.inuoe.jzon.asd.

Parent Component

com.inuoe.jzon (system).

Packages

com.inuoe.jzon/eisel-lemire.

Public Interface

make-double (function).

Internals

3.1.3 com.inuoe.jzon/ratio-to-double.lisp

Source

com.inuoe.jzon.asd.

Parent Component

com.inuoe.jzon (system).

Packages

com.inuoe.jzon/ratio-to-double.

Public Interface

ratio-to-double (function).

Internals

3.1.4 com.inuoe.jzon/schubfach.lisp

Source

com.inuoe.jzon.asd.

Parent Component

com.inuoe.jzon (system).

Packages

com.inuoe.jzon/schubfach.

Public Interface
Internals

3.1.5 com.inuoe.jzon/jzon.lisp

Dependencies
Source

com.inuoe.jzon.asd.

Parent Component

com.inuoe.jzon (system).

Packages

com.inuoe.jzon.

Public Interface
Internals

4 Packages

Packages are listed by definition order.


4.1 com.inuoe.jzon/ratio-to-double

Source

ratio-to-double.lisp.

Use List

common-lisp.

Public Interface

ratio-to-double (function).

Internals

4.2 com.inuoe.jzon/eisel-lemire

Source

eisel-lemire.lisp.

Use List

common-lisp.

Public Interface

make-double (function).

Internals

4.3 com.inuoe.jzon

Source

jzon.lisp.

Use List

common-lisp.

Public Interface
Internals

4.4 com.inuoe.jzon/schubfach

Source

schubfach.lisp.

Use List

common-lisp.

Public Interface
Internals

5 Definitions

Definitions are sorted by export status, category, package, and then by lexicographic order.


5.1 Public Interface


5.1.1 Special variables

Special Variable: *writer*

The active ‘writer’ for the various ‘write-*’ functions.

Package

com.inuoe.jzon.

Source

jzon.lisp.


5.1.2 Macros

Macro: with-array (writer &body body)

Wrapper around ‘begin-array’ and ‘end-array’

see ‘write-array’
see ‘write-values’

Package

com.inuoe.jzon.

Source

jzon.lisp.

Macro: with-array* (&body body)

As ‘with-array’, but using the currently bound ‘*writer*’.

Package

com.inuoe.jzon.

Source

jzon.lisp.

Macro: with-object (writer &body body)

Wrapper around ‘begin-object’ and ‘end-object’.

see ‘write-object’
see ‘write-property’
see ‘write-properties’

Package

com.inuoe.jzon.

Source

jzon.lisp.

Macro: with-object* (&body body)

As ‘with-object’, but using the currently bound ‘*writer*’.

Package

com.inuoe.jzon.

Source

jzon.lisp.

Macro: with-parser ((var &rest args) &body body)

Create a ‘parser’, ensuring ‘close-parser’ is called on it on exit.

see ‘make-parser’
see ‘close-parser’

Package

com.inuoe.jzon.

Source

jzon.lisp.

Macro: with-writer ((var &rest args) &body body)

Create a ‘writer’, ensuring ‘close-writer’ is called on it on exit.

see ‘make-writer’
see ‘close-writer’

Package

com.inuoe.jzon.

Source

jzon.lisp.

Macro: with-writer* ((&rest args &key &allow-other-keys) &body body)

Create a new ‘writer’ using ‘args’ and bind it to ‘*writer*’

‘args’ are a the same as ‘make-writer’

Package

com.inuoe.jzon.

Source

jzon.lisp.


5.1.3 Ordinary functions

Function: begin-array (writer)

Begin writing an array to ‘writer’.

see ‘write-values’
see ‘end-array’

Package

com.inuoe.jzon.

Source

jzon.lisp.

Function: begin-array* ()

As ‘begin-array’, but using the currently bound ‘*writer*’.

Package

com.inuoe.jzon.

Source

jzon.lisp.

Function: begin-object (writer)

Begin writing an object to ‘writer’.

see ‘write-key’
see ‘write-property’
see ‘write-properties’
see ‘end-object’

Package

com.inuoe.jzon.

Source

jzon.lisp.

Function: begin-object* ()

As ‘begin-object’, but using the currently bound ‘*writer*’.

Package

com.inuoe.jzon.

Source

jzon.lisp.

Function: close-parser (parser)

Close the ‘parser’

Package

com.inuoe.jzon.

Source

jzon.lisp.

Function: close-writer (writer)

Close the ‘writer’.

Package

com.inuoe.jzon.

Source

jzon.lisp.

Function: end-array (writer)

Finish writing an array to ‘writer’. Must match an opening ‘begin-array’.

Package

com.inuoe.jzon.

Source

jzon.lisp.

Function: end-array* ()

As ‘end-array’, but using the currently bound ‘*writer*’.

Package

com.inuoe.jzon.

Source

jzon.lisp.

Function: end-object (writer)

Finish writing an object to ‘writer’. Must match an opening ‘begin-object’.

Package

com.inuoe.jzon.

Source

jzon.lisp.

Function: end-object* ()

As ‘end-object’, but using the currently bound ‘*writer*’.

Package

com.inuoe.jzon.

Source

jzon.lisp.

Function: make-double (mantissa exp10 neg)
Package

com.inuoe.jzon/eisel-lemire.

Source

eisel-lemire.lisp.

Function: make-parser (in &key allow-comments allow-trailing-comma allow-multiple-content max-string-length key-fn)

Construct a ‘parser’ Read a JSON value from ‘in’, which may be a vector, a stream, or a pathname.
‘:allow-comments’ controls if we allow single-line // comments and /**/ multiline block comments. ‘:allow-trailing-comma’ controls if we allow a single comma ‘,’ after all elements of an array or object. ‘:allow-multiple-content’ controls if we alow extra content beyond a single toplevel JSON value.
‘:max-string-length’ controls the maximum length allowed when reading a string key or value.
‘:key-fn’ is a function of one value which ’pools’ object keys, or ‘nil’ to disable pooling, and ‘t’ for the default pool.

see ‘next’
see ‘close-parser’

Package

com.inuoe.jzon.

Source

jzon.lisp.

Function: make-writer (&key stream pretty replacer coerce-key max-depth)

Create a writer for subsequent ‘write-value’, ‘begin-object’, et al calls.
‘:stream’ like the ‘destination’ in ‘format’, or a ‘pathname’
‘:pretty’ if true, pretty-format the output
‘:replacer’ a function which takes a key and value as an argument, and returns t or nil, indicating whether the KV pair should be written. - Optionally returns a second value, indicating the value to be stringified in place of the given value.
‘:coerce-key’ is a function of one argument, and is used to coerce object keys into non-nil string designators
‘:max-depth’ is an integer denoting the maximum depth to allow nesting during writing, or nil

see ‘coerce-key’

Package

com.inuoe.jzon.

Source

jzon.lisp.

Function: parse (in &key max-depth allow-comments allow-trailing-comma allow-multiple-content max-string-length key-fn)

Read a JSON value from ‘in’, which may be a vector, a stream, a pathname, or a span from ‘span’.
‘:max-depth’ controls the maximum depth allowed when nesting arrays or objects.
‘:allow-comments’ controls if we allow single-line // comments and /**/ multiline block comments. ‘:allow-trailing-comma’ controls if we allow a single comma ‘,’ after all elements of an array or object. ‘:allow-multiple-content’ controls if we alow extra content beyond a single toplevel JSON value.
‘:max-string-length’ controls the maximum length allowed when reading a string key or value.
‘:key-fn’ is a function of one value which ’pools’ object keys, or ‘nil’ to disable pooling, and ‘t’ for the default pool.

Package

com.inuoe.jzon.

Source

jzon.lisp.

Function: parse-next (parser)

Read the next token from ‘parser’.

Returns 2 values:
:value, value ; A ‘json-atom’ <value> :begin-array, nil ; Array open [ :end-array, nil ; Array close ] :begin-object, nil ; Object open { :object-key, key ; Object key :end-object, nil ; Object finished } nil. nil ; Parsing complete

see ‘with-parser’
see ‘make-parser’
see ‘close-parser’

Package

com.inuoe.jzon.

Source

jzon.lisp.

Function: parse-next-element (parser &key max-depth eof-error-p eof-value)

Read the next available ‘json-element’ from ‘parser’.

This is a utility function around ‘parse-next’ for advancing the ‘parser’ to a certain point, and reading
an element at that point.

‘parse-next-element’ must be called when the ‘parser’ is in a position that allows values:

1. toplevel
2. inside reading array
3. after reading object key
4. after toplevel when ‘allow-multiple-content’ is true on the ‘parser’

In the case that we are in the middle of reading an array, or after reading toplevel content, signals an error if ‘eof-error-p‘ is true, otherwise returns ‘eof-value’.

Package

com.inuoe.jzon.

Source

jzon.lisp.

Function: ratio-to-double (number)
Package

com.inuoe.jzon/ratio-to-double.

Source

ratio-to-double.lisp.

Function: span (in &key start end)

Define a bounded sequence in ‘in’ for use in ‘parse’ and ‘make-parser’ with a ‘start’ and ‘end’.

Package

com.inuoe.jzon.

Source

jzon.lisp.

Function: stringify (element &key stream pretty replacer coerce-key)

Serialize ‘element’ into JSON.
Returns a fresh string if ‘stream’ is nil, nil otherwise.
‘:stream’ like the ‘destination’ in ‘format’, or a ‘pathname’
‘:pretty’ if true, pretty-format the output
‘:replacer’ a function which takes a key and value as an argument, and returns t or nil, indicating whether the KV pair should be written. - Optionally returns a second value, indicating the value to be stringified in place of the given value.
‘:coerce-key’ is a function of one argument, and is used to coerce object keys into non-nil string designators
‘:max-depth’ is an integer denoting the maximum depth to allow nesting during writing, or nil

see ‘coerce-key’

Package

com.inuoe.jzon.

Source

jzon.lisp.

Function: write-array (writer &rest values)

Write an array from a series of ‘values.’

Package

com.inuoe.jzon.

Source

jzon.lisp.

Function: write-array* (&rest values)

As ‘write-array’, but using the currently bound ‘*writer*’.

Package

com.inuoe.jzon.

Source

jzon.lisp.

Function: write-double (x stream)

Write the ‘double-float’ ‘x’ to ‘stream’, which must be a character output stream.

Package

com.inuoe.jzon/schubfach.

Source

schubfach.lisp.

Function: write-float (x stream)

Write the ‘single-float’ ‘x’ to ‘stream’, which must be a character output stream.

Package

com.inuoe.jzon/schubfach.

Source

schubfach.lisp.

Function: write-key (writer key)

Write an object ‘key’ to ‘writer’. Must currently be writing an object.

see ‘begin-object’
see ‘with-object’

Package

com.inuoe.jzon.

Source

jzon.lisp.

Function: write-key* (key)

As ‘write-key’, but using the currently bound ‘*writer*’.

Package

com.inuoe.jzon.

Source

jzon.lisp.

Function: write-object (writer &rest kvp)

Write an object value from a set of key-value pairs. Ex.
(write-object writer
:speed 10
:colour :red)

Package

com.inuoe.jzon.

Source

jzon.lisp.

Function: write-object* (&rest kvp)

As ‘write-object’, but using the currently bound ‘*writer*’.

Package

com.inuoe.jzon.

Source

jzon.lisp.

Function: write-properties (writer &rest kvp)

Write an set of object properties to ‘writer’. Must currently be writing an object. Ex.
(with-object writer
(write-properties writer
:speed 10
:colour :red)
(write-key writer :an-array)
(with-array writer
(write-value 42))

(write-properties writer :more 0 :after 42))

see ‘write-property’
see ‘write-object’

Package

com.inuoe.jzon.

Source

jzon.lisp.

Function: write-properties* (&rest kvp)

As ‘write-properties’, but using the currently bound ‘*writer*’.

Package

com.inuoe.jzon.

Source

jzon.lisp.

Function: write-property* (key value)

As ‘write-property’, but using the currently bound ‘*writer*’.

Package

com.inuoe.jzon.

Source

jzon.lisp.

Function: write-value* (value)

As ‘write-value’, but using the currently bound ‘*writer*’.

Package

com.inuoe.jzon.

Source

jzon.lisp.

Function: write-values (writer &rest values)

Convenience function to write multiple ‘values’ to ‘writer’. Must be writing an array.

Package

com.inuoe.jzon.

Source

jzon.lisp.

Function: write-values* (&rest values)

As ‘write-values’, but using the currently bound ‘*writer*’.

Package

com.inuoe.jzon.

Source

jzon.lisp.


5.1.4 Generic functions

Generic Function: coerce-key (key)

Coerce ‘key’ into a string designator, or ‘nil’ if ‘key’ is an unsuitable key.

Package

com.inuoe.jzon.

Source

jzon.lisp.

Methods
Method: coerce-key (key)
Method: coerce-key ((key symbol))
Method: coerce-key ((key string))
Method: coerce-key ((key character))
Method: coerce-key ((key integer))
Method: coerce-key ((key float))
Method: coerce-key ((key ratio))
Generic Function: coerced-fields (element)

Return a list of key definitions for ‘element’.
A key definition is a three-element list of the form
(name value &optional type)
name is the key name and will be coerced if not already a string
value is the value, and will be written per ‘write-value’
type is a type for the key, in order to handle ambiguous ‘nil’ interpretations.

Example return value:
((name :zulu)
(hobbies nil list))

Package

com.inuoe.jzon.

Source

jzon.lisp.

Methods
Method: coerced-fields (element)
Method: coerced-fields ((element structure-object))
Method: coerced-fields ((element standard-object))
Generic Function: write-value (writer value)

Write a JSON value to ‘writer’. Specialize this function for customized JSON writing.

Package

com.inuoe.jzon.

Source

jzon.lisp.

Methods
Method: write-value :around ((writer writer) value)
Method: write-value ((writer writer) value)
Method: write-value ((writer writer) (value (eql t)))
Method: write-value ((writer writer) (value (eql nil)))
Method: write-value ((writer writer) (value (eql null)))
Method: write-value ((writer writer) (value integer))
Method: write-value ((writer writer) (value float))
Method: write-value ((writer writer) (value string))
Method: write-value ((writer writer) (value vector))
Method: write-value ((writer writer) (value hash-table))
Method: write-value ((writer writer) (value ratio))
Method: write-value ((writer writer) (value symbol))
Method: write-value ((writer writer) (value character))
Method: write-value ((writer writer) (value pathname))
Method: write-value ((writer writer) (value array))
Method: write-value ((writer writer) (value sequence))

5.1.5 Standalone methods

Method: stream-write-char ((stream %string-output-stream) character)
Package

sb-gray.

Source

jzon.lisp.

Method: stream-write-string ((stream %string-output-stream) string &optional start end)
Package

sb-gray.

Source

jzon.lisp.


5.1.6 Conditions

Condition: json-eof-error

Error signalled when reaching the end of file while parsing JSON.

Package

com.inuoe.jzon.

Source

jzon.lisp.

Direct superclasses

json-parse-error.

Condition: json-error

Common error condition for all errors relating to reading/writing JSON.

Package

com.inuoe.jzon.

Source

jzon.lisp.

Direct superclasses

simple-error.

Direct subclasses
Condition: json-limit-error

Error signalled when some limit in the JSON parser/writer has been exceeded.

Package

com.inuoe.jzon.

Source

jzon.lisp.

Direct superclasses

json-error.

Direct subclasses
Direct methods

%json-limit-error-limit.

Direct slots
Slot: %limit
Initargs

:limit

Readers

%json-limit-error-limit.

Writers

This slot is read-only.

Condition: json-parse-error

Error occuring while parsing JSON, in some cases with row/col information.

Package

com.inuoe.jzon.

Source

jzon.lisp.

Direct superclasses

json-error.

Direct subclasses
Direct methods
Direct slots
Slot: %line
Initargs

:line

Readers

%json-parse-error-line.

Writers

This slot is read-only.

Slot: %column
Initargs

:column

Readers

%json-parse-error-column.

Writers

This slot is read-only.

Condition: json-parse-limit-error

Error signalled when some limit in the JSON parser has been exceeded.

Package

com.inuoe.jzon.

Source

jzon.lisp.

Direct superclasses
Condition: json-recursive-write-error

Error signalled when a recursive write is detected.
A recursive write is when ‘write-value’ is called from within ‘write-value’ with a value it has ’seen’ before.

Package

com.inuoe.jzon.

Source

jzon.lisp.

Direct superclasses

json-write-error.

Direct methods

%json-recursive-write-error-path.

Direct slots
Slot: %path
Initargs

:path

Readers

%json-recursive-write-error-path.

Writers

This slot is read-only.

Condition: json-write-error

Error signalled when there is an issue during writing JSON.

Package

com.inuoe.jzon.

Source

jzon.lisp.

Direct superclasses

json-error.

Direct subclasses
Condition: json-write-limit-error

Error signalled when a limit on the JSON writer has been exceeded.

Package

com.inuoe.jzon.

Source

jzon.lisp.

Direct superclasses

5.1.7 Classes

Class: writer

A JSON writer on which to call ‘write-value’, ‘begin-object’, etc.

Package

com.inuoe.jzon.

Source

jzon.lisp.

Direct methods
Direct Default Initargs
InitargValue
:stream(make-broadcast-stream)
:coerce-key(function coerce-key)
:prettynil
:replacernil
:max-depth128
Direct slots
Slot: %stream
Initargs

:stream

Slot: %coerce-key
Initargs

:coerce-key

Slot: %pretty
Initargs

:pretty

Slot: %stack
Slot: %ref-stack
Slot: %replacer
Initargs

:replacer

Slot: %depth
Type

integer

Initform

0

Slot: %max-depth
Initargs

:max-depth

Slot: %close-action
Initargs

:close-action


5.1.8 Types

Type: json-atom ()

A ’native’ atomic JSON value one can receive from ‘parse’. t => true
nil => false
null => null
real => number

Package

com.inuoe.jzon.

Source

jzon.lisp.

Type: json-element ()

A ’native’ JSON value one can receive from ‘parse’.

vector => list
hash-table => object

see ‘json-atom’

Package

com.inuoe.jzon.

Source

jzon.lisp.


5.2 Internals


5.2.1 Constants

Constant: +%pow10-max+
Package

com.inuoe.jzon/eisel-lemire.

Source

eisel-lemire.lisp.

Constant: +%pow10-min+
Package

com.inuoe.jzon/eisel-lemire.

Source

eisel-lemire.lisp.


5.2.2 Special variables

Special Variable: *%detailed-powers-of-ten-max*
Package

com.inuoe.jzon/eisel-lemire.

Source

eisel-lemire.lisp.

Special Variable: *%detailed-powers-of-ten-min*
Package

com.inuoe.jzon/eisel-lemire.

Source

eisel-lemire.lisp.

Special Variable: *%digits*
Package

com.inuoe.jzon/schubfach.

Source

schubfach.lisp.

Special Variable: *%gs*
Package

com.inuoe.jzon/schubfach.

Source

schubfach.lisp.

Special Variable: *%offsets*
Package

com.inuoe.jzon/schubfach.

Source

schubfach.lisp.


5.2.3 Macros

Macro: %<< (size integer count)
Package

com.inuoe.jzon/schubfach.

Source

schubfach.lisp.

Macro: %<<32 (integer count)
Package

com.inuoe.jzon/schubfach.

Source

schubfach.lisp.

Macro: %<<64 (integer count)
Package

com.inuoe.jzon/schubfach.

Source

schubfach.lisp.

Macro: %<<u64 (integer count)
Package

com.inuoe.jzon/eisel-lemire.

Source

eisel-lemire.lisp.

Macro: %>> (size integer count)
Package

com.inuoe.jzon/schubfach.

Source

schubfach.lisp.

Macro: %>>32 (integer count)
Package

com.inuoe.jzon/schubfach.

Source

schubfach.lisp.

Macro: %>>64 (integer count)
Package

com.inuoe.jzon/schubfach.

Source

schubfach.lisp.

Macro: %>>> (size integer count)
Package

com.inuoe.jzon/schubfach.

Source

schubfach.lisp.

Macro: %>>>32 (integer count)
Package

com.inuoe.jzon/schubfach.

Source

schubfach.lisp.

Macro: %>>>64 (integer count)
Package

com.inuoe.jzon/schubfach.

Source

schubfach.lisp.

Macro: %>>u64 (integer count)
Package

com.inuoe.jzon/eisel-lemire.

Source

eisel-lemire.lisp.

Macro: %bits-double-float (x)
Package

com.inuoe.jzon/ratio-to-double.

Source

ratio-to-double.lisp.

Macro: %bits-double-float (x)
Package

com.inuoe.jzon/eisel-lemire.

Source

eisel-lemire.lisp.

Macro: %double-float-bits (x)
Package

com.inuoe.jzon/schubfach.

Source

schubfach.lisp.

Macro: %int (size integer)
Package

com.inuoe.jzon/schubfach.

Source

schubfach.lisp.

Macro: %int32 (integer)
Package

com.inuoe.jzon/schubfach.

Source

schubfach.lisp.

Macro: %int64 (integer)
Package

com.inuoe.jzon/schubfach.

Source

schubfach.lisp.

Macro: %multiply-high (x y)
Package

com.inuoe.jzon/schubfach.

Source

schubfach.lisp.

Macro: %single-float-bits (x)
Package

com.inuoe.jzon/schubfach.

Source

schubfach.lisp.

Macro: %uint64 (integer)
Package

com.inuoe.jzon/eisel-lemire.

Source

eisel-lemire.lisp.


5.2.4 Ordinary functions

Function: %calc-pos (step n)

Calculate line, column numbers by ‘step’ ping through the input ‘n’ times.

Package

com.inuoe.jzon.

Source

jzon.lisp.

Function: %control-char-p (c)

Returns true if ‘c’ is a control character per RFC 8259.

Package

com.inuoe.jzon.

Source

jzon.lisp.

Function: %digit-count (q0)
Package

com.inuoe.jzon/schubfach.

Source

schubfach.lisp.

Function: %ends-token-p (char)
Package

com.inuoe.jzon.

Source

jzon.lisp.

Function: %ensure-function (x)
Package

com.inuoe.jzon.

Source

jzon.lisp.

Function: %gen-powers-of-ten-tables ()
Package

com.inuoe.jzon/eisel-lemire.

Source

eisel-lemire.lisp.

Function: %key-fn (key-fn str)
Package

com.inuoe.jzon.

Source

jzon.lisp.

Function: %make-float-from-fixnums (hi lo exp sign)
Package

com.inuoe.jzon/ratio-to-double.

Source

ratio-to-double.lisp.

Function: %make-fns (in max-string-length)

Create the step, read-string, and pos functions for ‘in’.

see ‘%step’
see ‘%read-string’

Package

com.inuoe.jzon.

Source

jzon.lisp.

Function: %make-fns-array-ub8 (in start end max-string-length)
Package

com.inuoe.jzon.

Source

jzon.lisp.

Function: %make-fns-binary-stream (in max-string-length)
Package

com.inuoe.jzon.

Source

jzon.lisp.

Function: %make-fns-simple-array-ub8 (in start end max-string-length)
Package

com.inuoe.jzon.

Source

jzon.lisp.

Function: %make-fns-simple-string (in start end max-string-length)

Create step, and read-string functions for the string ‘in’.

Package

com.inuoe.jzon.

Source

jzon.lisp.

Function: %make-fns-stream (in max-string-length)

Create step, and read-string functions for the stream ‘in’.

Package

com.inuoe.jzon.

Source

jzon.lisp.

Function: %make-fns-string (in start end max-string-length)

Create step, and read-string functions for the string ‘in’.

Package

com.inuoe.jzon.

Source

jzon.lisp.

Function: %make-parser-state (&key %parser-state-state %parser-state-lookahead %parser-state-context)
Package

com.inuoe.jzon.

Source

jzon.lisp.

Function: %make-string-pool ()

Make a function for ’interning’ strings in a pool.

Package

com.inuoe.jzon.

Source

jzon.lisp.

Function: %mul64 (x y)
Package

com.inuoe.jzon/eisel-lemire.

Source

eisel-lemire.lisp.

Function: %parse (%step %read-string %pos %key-fn %max-depth %allow-comments %allow-trailing-comma %allow-multiple-content)
Package

com.inuoe.jzon.

Source

jzon.lisp.

Function: %parse-next (%parser-state %step %read-string %pos %key-fn %allow-trailing-comma %allow-comments %allow-multiple-content)
Package

com.inuoe.jzon.

Source

jzon.lisp.

Reader: %parser-state-context (instance)
Writer: (setf %parser-state-context) (instance)
Package

com.inuoe.jzon.

Source

jzon.lisp.

Target Slot

%parser-state-context.

Reader: %parser-state-lookahead (instance)
Writer: (setf %parser-state-lookahead) (instance)
Package

com.inuoe.jzon.

Source

jzon.lisp.

Target Slot

%parser-state-lookahead.

Reader: %parser-state-state (instance)
Writer: (setf %parser-state-state) (instance)
Package

com.inuoe.jzon.

Source

jzon.lisp.

Target Slot

%parser-state-state.

Function: %raise (type pos format &rest args)
Package

com.inuoe.jzon.

Source

jzon.lisp.

Function: %raise-limit (type pos limit format &rest args)
Package

com.inuoe.jzon.

Source

jzon.lisp.

Function: %read-json-number (step c)

Reads an RFC 8259 number, starting with ‘c’.

Package

com.inuoe.jzon.

Source

jzon.lisp.

Function: %read-json-string (step pos string-accum max-string-length base-string-p)

Reads a JSON string step-wise using ‘step’ until an unescaped double-quote. Returns a ‘simple-string’ representing the string.

Package

com.inuoe.jzon.

Source

jzon.lisp.

Function: %read-string (read-string)
Package

com.inuoe.jzon.

Source

jzon.lisp.

Function: %read-unicode (step pos)
Package

com.inuoe.jzon.

Source

jzon.lisp.

Function: %rop2 (g cp)
Package

com.inuoe.jzon/schubfach.

Source

schubfach.lisp.

Function: %rop3 (g1 g0 cp)
Package

com.inuoe.jzon/schubfach.

Source

schubfach.lisp.

Function: %skip-cpp-comment (step pos)
Package

com.inuoe.jzon.

Source

jzon.lisp.

Function: %skip-whitespace (step pos c allow-comments)

Skip whitespace, and optionally comments, depending on ‘%*allow-comments*’ Returns the next character.

Package

com.inuoe.jzon.

Source

jzon.lisp.

Function: %step (step)
Package

com.inuoe.jzon.

Source

jzon.lisp.

Function: %type= (a b)
Package

com.inuoe.jzon.

Source

jzon.lisp.

Function: %utf-8-decode (u1 consume-octet)
Package

com.inuoe.jzon.

Source

jzon.lisp.

Function: %whitespace-p (char)
Package

com.inuoe.jzon.

Source

jzon.lisp.

Function: %write-2-digits (q0 pos buf ds)
Package

com.inuoe.jzon/schubfach.

Source

schubfach.lisp.

Function: %write-3-digits (q0 pos buf ds)
Package

com.inuoe.jzon/schubfach.

Source

schubfach.lisp.

Function: %write-double (x buf)
Package

com.inuoe.jzon/schubfach.

Source

schubfach.lisp.

Function: %write-float (x buf)
Package

com.inuoe.jzon/schubfach.

Source

schubfach.lisp.

Function: %write-fraction-digits (q p pos-lim buf ds)
Package

com.inuoe.jzon/schubfach.

Source

schubfach.lisp.

Function: %write-indentation (writer)

Indent ‘writer’ depending on its depth, if it is set to pretty print.

Package

com.inuoe.jzon.

Source

jzon.lisp.

Function: %write-json-atom (writer value)

Write a JSON atom per ‘json-atom’.

Package

com.inuoe.jzon.

Source

jzon.lisp.

Function: %write-json-string (string stream)

Write ‘string’ to ‘stream’ as a JSON string.

Package

com.inuoe.jzon.

Source

jzon.lisp.

Function: %write-positive-int-digits (q p buf ds)
Package

com.inuoe.jzon/schubfach.

Source

schubfach.lisp.

Function: %write-significant-fraction-digits32 (q p pos-lim buf ds)
Package

com.inuoe.jzon/schubfach.

Source

schubfach.lisp.

Function: %write-significant-fraction-digits64 (q p pl buf ds)
Package

com.inuoe.jzon/schubfach.

Source

schubfach.lisp.

Function: stringify-double (x)
Package

com.inuoe.jzon/schubfach.

Source

schubfach.lisp.

Function: stringify-float (x)
Package

com.inuoe.jzon/schubfach.

Source

schubfach.lisp.

Function: write-property (writer key value)

Write an object property/key value pair.

Package

com.inuoe.jzon.

Source

jzon.lisp.


5.2.5 Generic functions

Generic Reader: %json-limit-error-limit (condition)
Package

com.inuoe.jzon.

Methods
Reader Method: %json-limit-error-limit ((condition json-limit-error))
Source

jzon.lisp.

Target Slot

%limit.

Generic Reader: %json-parse-error-column (condition)
Package

com.inuoe.jzon.

Methods
Reader Method: %json-parse-error-column ((condition json-parse-error))
Source

jzon.lisp.

Target Slot

%column.

Generic Reader: %json-parse-error-line (condition)
Package

com.inuoe.jzon.

Methods
Reader Method: %json-parse-error-line ((condition json-parse-error))
Source

jzon.lisp.

Target Slot

%line.

Generic Reader: %json-recursive-write-error-path (condition)
Package

com.inuoe.jzon.

Methods
Reader Method: %json-recursive-write-error-path ((condition json-recursive-write-error))
Source

jzon.lisp.

Target Slot

%path.


5.2.6 Structures

Structure: %parser-state
Package

com.inuoe.jzon.

Source

jzon.lisp.

Direct superclasses

structure-object.

Direct slots
Slot: %parser-state-state
Type

symbol

Initform

(quote com.inuoe.jzon::toplevel)

Readers

%parser-state-state.

Writers

(setf %parser-state-state).

Slot: %parser-state-lookahead
Type

(or null character)

Readers

%parser-state-lookahead.

Writers

(setf %parser-state-lookahead).

Slot: %parser-state-context
Type

list

Readers

%parser-state-context.

Writers

(setf %parser-state-context).


5.2.7 Classes

Class: %octet-vector-span
Package

com.inuoe.jzon.

Source

jzon.lisp.

Direct superclasses

%span.

Class: %span
Package

com.inuoe.jzon.

Source

jzon.lisp.

Direct subclasses
Direct slots
Slot: %vector
Initargs

:vector

Slot: %start
Initargs

:start

Slot: %end
Initargs

:end

Class: %string-output-stream
Package

com.inuoe.jzon.

Source

jzon.lisp.

Direct superclasses

fundamental-character-output-stream.

Direct methods
Direct slots
Slot: %string
Initargs

:string

Class: %string-span
Package

com.inuoe.jzon.

Source

jzon.lisp.

Direct superclasses

%span.

Class: parser

An incremental JSON parser.

see ‘make-parser’
see ‘next’
see ‘close-parser’

Package

com.inuoe.jzon.

Source

jzon.lisp.

Direct slots
Slot: %step
Type

function

Slot: %read-string
Type

function

Slot: %pos
Type

function

Slot: %allow-comments
Type

boolean

Slot: %allow-trailing-comma
Type

boolean

Slot: %allow-multiple-content
Type

boolean

Slot: %key-fn
Type

function

Slot: %max-string-length
Type

(integer 1 (17592186044416))

Initform

(min 1048576 (1- array-dimension-limit))

Slot: %close-action
Type

(or null function)

Slot: %parser-state
Type

com.inuoe.jzon::%parser-state

Initform

(com.inuoe.jzon::%make-parser-state)


Appendix A Indexes


A.1 Concepts


A.2 Functions

Jump to:   %   (  
B   C   E   F   G   M   P   R   S   W  
Index Entry  Section

%
%<<: Private macros
%<<32: Private macros
%<<64: Private macros
%<<u64: Private macros
%>>: Private macros
%>>32: Private macros
%>>64: Private macros
%>>>: Private macros
%>>>32: Private macros
%>>>64: Private macros
%>>u64: Private macros
%bits-double-float: Private macros
%bits-double-float: Private macros
%calc-pos: Private ordinary functions
%control-char-p: Private ordinary functions
%digit-count: Private ordinary functions
%double-float-bits: Private macros
%ends-token-p: Private ordinary functions
%ensure-function: Private ordinary functions
%gen-powers-of-ten-tables: Private ordinary functions
%int: Private macros
%int32: Private macros
%int64: Private macros
%json-limit-error-limit: Private generic functions
%json-limit-error-limit: Private generic functions
%json-parse-error-column: Private generic functions
%json-parse-error-column: Private generic functions
%json-parse-error-line: Private generic functions
%json-parse-error-line: Private generic functions
%json-recursive-write-error-path: Private generic functions
%json-recursive-write-error-path: Private generic functions
%key-fn: Private ordinary functions
%make-float-from-fixnums: Private ordinary functions
%make-fns: Private ordinary functions
%make-fns-array-ub8: Private ordinary functions
%make-fns-binary-stream: Private ordinary functions
%make-fns-simple-array-ub8: Private ordinary functions
%make-fns-simple-string: Private ordinary functions
%make-fns-stream: Private ordinary functions
%make-fns-string: Private ordinary functions
%make-parser-state: Private ordinary functions
%make-string-pool: Private ordinary functions
%mul64: Private ordinary functions
%multiply-high: Private macros
%parse: Private ordinary functions
%parse-next: Private ordinary functions
%parser-state-context: Private ordinary functions
%parser-state-lookahead: Private ordinary functions
%parser-state-state: Private ordinary functions
%raise: Private ordinary functions
%raise-limit: Private ordinary functions
%read-json-number: Private ordinary functions
%read-json-string: Private ordinary functions
%read-string: Private ordinary functions
%read-unicode: Private ordinary functions
%rop2: Private ordinary functions
%rop3: Private ordinary functions
%single-float-bits: Private macros
%skip-cpp-comment: Private ordinary functions
%skip-whitespace: Private ordinary functions
%step: Private ordinary functions
%type=: Private ordinary functions
%uint64: Private macros
%utf-8-decode: Private ordinary functions
%whitespace-p: Private ordinary functions
%write-2-digits: Private ordinary functions
%write-3-digits: Private ordinary functions
%write-double: Private ordinary functions
%write-float: Private ordinary functions
%write-fraction-digits: Private ordinary functions
%write-indentation: Private ordinary functions
%write-json-atom: Private ordinary functions
%write-json-string: Private ordinary functions
%write-positive-int-digits: Private ordinary functions
%write-significant-fraction-digits32: Private ordinary functions
%write-significant-fraction-digits64: Private ordinary functions

(
(setf %parser-state-context): Private ordinary functions
(setf %parser-state-lookahead): Private ordinary functions
(setf %parser-state-state): Private ordinary functions

B
begin-array: Public ordinary functions
begin-array*: Public ordinary functions
begin-object: Public ordinary functions
begin-object*: Public ordinary functions

C
close-parser: Public ordinary functions
close-writer: Public ordinary functions
coerce-key: Public generic functions
coerce-key: Public generic functions
coerce-key: Public generic functions
coerce-key: Public generic functions
coerce-key: Public generic functions
coerce-key: Public generic functions
coerce-key: Public generic functions
coerce-key: Public generic functions
coerced-fields: Public generic functions
coerced-fields: Public generic functions
coerced-fields: Public generic functions
coerced-fields: Public generic functions

E
end-array: Public ordinary functions
end-array*: Public ordinary functions
end-object: Public ordinary functions
end-object*: Public ordinary functions

F
Function, %calc-pos: Private ordinary functions
Function, %control-char-p: Private ordinary functions
Function, %digit-count: Private ordinary functions
Function, %ends-token-p: Private ordinary functions
Function, %ensure-function: Private ordinary functions
Function, %gen-powers-of-ten-tables: Private ordinary functions
Function, %key-fn: Private ordinary functions
Function, %make-float-from-fixnums: Private ordinary functions
Function, %make-fns: Private ordinary functions
Function, %make-fns-array-ub8: Private ordinary functions
Function, %make-fns-binary-stream: Private ordinary functions
Function, %make-fns-simple-array-ub8: Private ordinary functions
Function, %make-fns-simple-string: Private ordinary functions
Function, %make-fns-stream: Private ordinary functions
Function, %make-fns-string: Private ordinary functions
Function, %make-parser-state: Private ordinary functions
Function, %make-string-pool: Private ordinary functions
Function, %mul64: Private ordinary functions
Function, %parse: Private ordinary functions
Function, %parse-next: Private ordinary functions
Function, %parser-state-context: Private ordinary functions
Function, %parser-state-lookahead: Private ordinary functions
Function, %parser-state-state: Private ordinary functions
Function, %raise: Private ordinary functions
Function, %raise-limit: Private ordinary functions
Function, %read-json-number: Private ordinary functions
Function, %read-json-string: Private ordinary functions
Function, %read-string: Private ordinary functions
Function, %read-unicode: Private ordinary functions
Function, %rop2: Private ordinary functions
Function, %rop3: Private ordinary functions
Function, %skip-cpp-comment: Private ordinary functions
Function, %skip-whitespace: Private ordinary functions
Function, %step: Private ordinary functions
Function, %type=: Private ordinary functions
Function, %utf-8-decode: Private ordinary functions
Function, %whitespace-p: Private ordinary functions
Function, %write-2-digits: Private ordinary functions
Function, %write-3-digits: Private ordinary functions
Function, %write-double: Private ordinary functions
Function, %write-float: Private ordinary functions
Function, %write-fraction-digits: Private ordinary functions
Function, %write-indentation: Private ordinary functions
Function, %write-json-atom: Private ordinary functions
Function, %write-json-string: Private ordinary functions
Function, %write-positive-int-digits: Private ordinary functions
Function, %write-significant-fraction-digits32: Private ordinary functions
Function, %write-significant-fraction-digits64: Private ordinary functions
Function, (setf %parser-state-context): Private ordinary functions
Function, (setf %parser-state-lookahead): Private ordinary functions
Function, (setf %parser-state-state): Private ordinary functions
Function, begin-array: Public ordinary functions
Function, begin-array*: Public ordinary functions
Function, begin-object: Public ordinary functions
Function, begin-object*: Public ordinary functions
Function, close-parser: Public ordinary functions
Function, close-writer: Public ordinary functions
Function, end-array: Public ordinary functions
Function, end-array*: Public ordinary functions
Function, end-object: Public ordinary functions
Function, end-object*: Public ordinary functions
Function, make-double: Public ordinary functions
Function, make-parser: Public ordinary functions
Function, make-writer: Public ordinary functions
Function, parse: Public ordinary functions
Function, parse-next: Public ordinary functions
Function, parse-next-element: Public ordinary functions
Function, ratio-to-double: Public ordinary functions
Function, span: Public ordinary functions
Function, stringify: Public ordinary functions
Function, stringify-double: Private ordinary functions
Function, stringify-float: Private ordinary functions
Function, write-array: Public ordinary functions
Function, write-array*: Public ordinary functions
Function, write-double: Public ordinary functions
Function, write-float: Public ordinary functions
Function, write-key: Public ordinary functions
Function, write-key*: Public ordinary functions
Function, write-object: Public ordinary functions
Function, write-object*: Public ordinary functions
Function, write-properties: Public ordinary functions
Function, write-properties*: Public ordinary functions
Function, write-property: Private ordinary functions
Function, write-property*: Public ordinary functions
Function, write-value*: Public ordinary functions
Function, write-values: Public ordinary functions
Function, write-values*: Public ordinary functions

G
Generic Function, %json-limit-error-limit: Private generic functions
Generic Function, %json-parse-error-column: Private generic functions
Generic Function, %json-parse-error-line: Private generic functions
Generic Function, %json-recursive-write-error-path: Private generic functions
Generic Function, coerce-key: Public generic functions
Generic Function, coerced-fields: Public generic functions
Generic Function, write-value: Public generic functions

M
Macro, %<<: Private macros
Macro, %<<32: Private macros
Macro, %<<64: Private macros
Macro, %<<u64: Private macros
Macro, %>>: Private macros
Macro, %>>32: Private macros
Macro, %>>64: Private macros
Macro, %>>>: Private macros
Macro, %>>>32: Private macros
Macro, %>>>64: Private macros
Macro, %>>u64: Private macros
Macro, %bits-double-float: Private macros
Macro, %bits-double-float: Private macros
Macro, %double-float-bits: Private macros
Macro, %int: Private macros
Macro, %int32: Private macros
Macro, %int64: Private macros
Macro, %multiply-high: Private macros
Macro, %single-float-bits: Private macros
Macro, %uint64: Private macros
Macro, with-array: Public macros
Macro, with-array*: Public macros
Macro, with-object: Public macros
Macro, with-object*: Public macros
Macro, with-parser: Public macros
Macro, with-writer: Public macros
Macro, with-writer*: Public macros
make-double: Public ordinary functions
make-parser: Public ordinary functions
make-writer: Public ordinary functions
Method, %json-limit-error-limit: Private generic functions
Method, %json-parse-error-column: Private generic functions
Method, %json-parse-error-line: Private generic functions
Method, %json-recursive-write-error-path: Private generic functions
Method, coerce-key: Public generic functions
Method, coerce-key: Public generic functions
Method, coerce-key: Public generic functions
Method, coerce-key: Public generic functions
Method, coerce-key: Public generic functions
Method, coerce-key: Public generic functions
Method, coerce-key: Public generic functions
Method, coerced-fields: Public generic functions
Method, coerced-fields: Public generic functions
Method, coerced-fields: Public generic functions
Method, stream-write-char: Public standalone methods
Method, stream-write-string: Public standalone methods
Method, write-value: Public generic functions
Method, write-value: Public generic functions
Method, write-value: Public generic functions
Method, write-value: Public generic functions
Method, write-value: Public generic functions
Method, write-value: Public generic functions
Method, write-value: Public generic functions
Method, write-value: Public generic functions
Method, write-value: Public generic functions
Method, write-value: Public generic functions
Method, write-value: Public generic functions
Method, write-value: Public generic functions
Method, write-value: Public generic functions
Method, write-value: Public generic functions
Method, write-value: Public generic functions
Method, write-value: Public generic functions

P
parse: Public ordinary functions
parse-next: Public ordinary functions
parse-next-element: Public ordinary functions

R
ratio-to-double: Public ordinary functions

S
span: Public ordinary functions
stream-write-char: Public standalone methods
stream-write-string: Public standalone methods
stringify: Public ordinary functions
stringify-double: Private ordinary functions
stringify-float: Private ordinary functions

W
with-array: Public macros
with-array*: Public macros
with-object: Public macros
with-object*: Public macros
with-parser: Public macros
with-writer: Public macros
with-writer*: Public macros
write-array: Public ordinary functions
write-array*: Public ordinary functions
write-double: Public ordinary functions
write-float: Public ordinary functions
write-key: Public ordinary functions
write-key*: Public ordinary functions
write-object: Public ordinary functions
write-object*: Public ordinary functions
write-properties: Public ordinary functions
write-properties*: Public ordinary functions
write-property: Private ordinary functions
write-property*: Public ordinary functions
write-value: Public generic functions
write-value: Public generic functions
write-value: Public generic functions
write-value: Public generic functions
write-value: Public generic functions
write-value: Public generic functions
write-value: Public generic functions
write-value: Public generic functions
write-value: Public generic functions
write-value: Public generic functions
write-value: Public generic functions
write-value: Public generic functions
write-value: Public generic functions
write-value: Public generic functions
write-value: Public generic functions
write-value: Public generic functions
write-value: Public generic functions
write-value*: Public ordinary functions
write-values: Public ordinary functions
write-values*: Public ordinary functions


A.3 Variables

Jump to:   %   *   +  
C   S  
Index Entry  Section

%
%allow-comments: Private classes
%allow-multiple-content: Private classes
%allow-trailing-comma: Private classes
%close-action: Public classes
%close-action: Private classes
%coerce-key: Public classes
%column: Public conditions
%depth: Public classes
%end: Private classes
%key-fn: Private classes
%limit: Public conditions
%line: Public conditions
%max-depth: Public classes
%max-string-length: Private classes
%parser-state: Private classes
%parser-state-context: Private structures
%parser-state-lookahead: Private structures
%parser-state-state: Private structures
%path: Public conditions
%pos: Private classes
%pretty: Public classes
%read-string: Private classes
%ref-stack: Public classes
%replacer: Public classes
%stack: Public classes
%start: Private classes
%step: Private classes
%stream: Public classes
%string: Private classes
%vector: Private classes

*
*%detailed-powers-of-ten-max*: Private special variables
*%detailed-powers-of-ten-min*: Private special variables
*%digits*: Private special variables
*%gs*: Private special variables
*%offsets*: Private special variables
*writer*: Public special variables

+
+%pow10-max+: Private constants
+%pow10-min+: Private constants

C
Constant, +%pow10-max+: Private constants
Constant, +%pow10-min+: Private constants

S
Slot, %allow-comments: Private classes
Slot, %allow-multiple-content: Private classes
Slot, %allow-trailing-comma: Private classes
Slot, %close-action: Public classes
Slot, %close-action: Private classes
Slot, %coerce-key: Public classes
Slot, %column: Public conditions
Slot, %depth: Public classes
Slot, %end: Private classes
Slot, %key-fn: Private classes
Slot, %limit: Public conditions
Slot, %line: Public conditions
Slot, %max-depth: Public classes
Slot, %max-string-length: Private classes
Slot, %parser-state: Private classes
Slot, %parser-state-context: Private structures
Slot, %parser-state-lookahead: Private structures
Slot, %parser-state-state: Private structures
Slot, %path: Public conditions
Slot, %pos: Private classes
Slot, %pretty: Public classes
Slot, %read-string: Private classes
Slot, %ref-stack: Public classes
Slot, %replacer: Public classes
Slot, %stack: Public classes
Slot, %start: Private classes
Slot, %step: Private classes
Slot, %stream: Public classes
Slot, %string: Private classes
Slot, %vector: Private classes
Special Variable, *%detailed-powers-of-ten-max*: Private special variables
Special Variable, *%detailed-powers-of-ten-min*: Private special variables
Special Variable, *%digits*: Private special variables
Special Variable, *%gs*: Private special variables
Special Variable, *%offsets*: Private special variables
Special Variable, *writer*: Public special variables


A.4 Data types

Jump to:   %  
C   E   F   J   P   R   S   T   W  
Index Entry  Section

%
%octet-vector-span: Private classes
%parser-state: Private structures
%span: Private classes
%string-output-stream: Private classes
%string-span: Private classes

C
Class, %octet-vector-span: Private classes
Class, %span: Private classes
Class, %string-output-stream: Private classes
Class, %string-span: Private classes
Class, parser: Private classes
Class, writer: Public classes
com.inuoe.jzon: The com․inuoe․jzon system
com.inuoe.jzon: The com․inuoe․jzon package
com.inuoe.jzon.asd: The com․inuoe․jzon/com․inuoe․jzon․asd file
com.inuoe.jzon/eisel-lemire: The com․inuoe․jzon/eisel-lemire package
com.inuoe.jzon/ratio-to-double: The com․inuoe․jzon/ratio-to-double package
com.inuoe.jzon/schubfach: The com․inuoe․jzon/schubfach package
Condition, json-eof-error: Public conditions
Condition, json-error: Public conditions
Condition, json-limit-error: Public conditions
Condition, json-parse-error: Public conditions
Condition, json-parse-limit-error: Public conditions
Condition, json-recursive-write-error: Public conditions
Condition, json-write-error: Public conditions
Condition, json-write-limit-error: Public conditions

E
eisel-lemire.lisp: The com․inuoe․jzon/eisel-lemire․lisp file

F
File, com.inuoe.jzon.asd: The com․inuoe․jzon/com․inuoe․jzon․asd file
File, eisel-lemire.lisp: The com․inuoe․jzon/eisel-lemire․lisp file
File, jzon.lisp: The com․inuoe․jzon/jzon․lisp file
File, ratio-to-double.lisp: The com․inuoe․jzon/ratio-to-double․lisp file
File, schubfach.lisp: The com․inuoe․jzon/schubfach․lisp file

J
json-atom: Public types
json-element: Public types
json-eof-error: Public conditions
json-error: Public conditions
json-limit-error: Public conditions
json-parse-error: Public conditions
json-parse-limit-error: Public conditions
json-recursive-write-error: Public conditions
json-write-error: Public conditions
json-write-limit-error: Public conditions
jzon.lisp: The com․inuoe․jzon/jzon․lisp file

P
Package, com.inuoe.jzon: The com․inuoe․jzon package
Package, com.inuoe.jzon/eisel-lemire: The com․inuoe․jzon/eisel-lemire package
Package, com.inuoe.jzon/ratio-to-double: The com․inuoe․jzon/ratio-to-double package
Package, com.inuoe.jzon/schubfach: The com․inuoe․jzon/schubfach package
parser: Private classes

R
ratio-to-double.lisp: The com․inuoe․jzon/ratio-to-double․lisp file

S
schubfach.lisp: The com․inuoe․jzon/schubfach․lisp file
Structure, %parser-state: Private structures
System, com.inuoe.jzon: The com․inuoe․jzon system

T
Type, json-atom: Public types
Type, json-element: Public types

W
writer: Public classes