Tokenizer buffers (Buf) and the token stream (Tok): the low-level reader surface for custom types.
ns
buf/tokare de-registered; reader-hot callers fetch-and-cache the prims, never class-dispatch per token.
Buf(Buf tok buffer)The buffer’s current token as a string.
Parameters:
ANY — A tokenizer bufferReturns: STRING — The token text
(Buf last-char buffer)The last character read into the buffer, as its integer code.
Parameters:
ANY — A tokenizer bufferReturns: INT — The character code
(Buf reset buffer)Empty a tokenizer buffer: reset its read and write cursors to the base.
Parameters:
ANY — A tokenizer bufferReturns: ANY — The buffer
(Buf retain buffer)Compact a buffer’s unread data to the front, freeing consumed space.
Parameters:
ANY — A tokenizer bufferReturns: ANY — The buffer
(Buf append buffer ch)Append one character at a buffer’s write cursor.
Parameters:
ANY — A tokenizer bufferCHAR — Character to writeReturns: ANY — The buffer
(Buf read buffer)Read one character into a buffer, extending from the input channel if it is exhausted.
Parameters:
ANY — A tokenizer bufferReturns: ANY — The buffer, or () at EOF
(Buf read-text buffer)Like (Buf read), but a NUL character counts as end-of-input.
Parameters:
ANY — A tokenizer bufferReturns: ANY — The buffer, or () at EOF/NUL
Tok(Tok read buffer)Read one token from a buffer through the type system’s analysers.
Parameters:
ANY — A tokenizer bufferReturns: ANY — The parsed token
(Tok read-str base s)Tokenize a string using a base’s type system.
Parameters:
ANY — Base object with type alist (Base instance or raw)STRING — Source string to tokenizeReturns: LIST — List of parsed tokens