ReaderNodeKind

preserves written syntax before reader-macro lowering. Only Atom carries a compiler form. Missing nodes have zero width; Invalid nodes retain the exact bytes rejected by the reader.

Atom

instantiate

(Fn [Form] ReaderNodeKind)

creates a Atom.

Group

instantiate

(Fn [ReaderGroup] ReaderNodeKind)

creates a Group.

Invalid

instantiate

(Fn [ReaderCategory] ReaderNodeKind)

creates a Invalid.

Missing

instantiate

(Fn [String] ReaderNodeKind)

creates a Missing.

Punctuation

instantiate

(Fn [ReaderCategory] ReaderNodeKind)

creates a Punctuation.

ReaderMacro

instantiate

(Fn [String] ReaderNodeKind)

creates a ReaderMacro.

Whitespace

instantiate

(Fn [] ReaderNodeKind)

creates a Whitespace.

copy

instantiate

(Fn [(Ref ReaderNodeKind a)] ReaderNodeKind)

copies a ReaderNodeKind.

delete

instantiate

(Fn [ReaderNodeKind] ())

deletes a ReaderNodeKind. This should usually not be called manually.

get-tag

instantiate

(Fn [(Ref ReaderNodeKind a)] Int)

Gets the tag from a ReaderNodeKind.

prn

instantiate

(Fn [(Ref ReaderNodeKind a)] String)

converts a ReaderNodeKind to a string.

str

instantiate

(Fn [(Ref ReaderNodeKind a)] String)

converts a ReaderNodeKind to a string.