CST reader: walks CST nodes from the Pratt parser and produces Clojure forms.
This is the lowering step: CST → Clojure forms. It mirrors the classic parser's output (same forms, same metadata, same AST node types) but reads from a lossless tree instead of a token stream.
Pipeline: scanner → trivia-attacher → pratt-parser → cst-reader
CST reader: walks CST nodes from the Pratt parser and produces Clojure forms. This is the lowering step: CST → Clojure forms. It mirrors the classic parser's output (same forms, same metadata, same AST node types) but reads from a lossless tree instead of a token stream. Pipeline: scanner → trivia-attacher → pratt-parser → **cst-reader**
(read-forms cst)(read-forms cst opts)Read a vector of CST nodes into a vector of Clojure forms. Filters out discard nodes and no-match sentinels at the top level, and splices #?@ results.
Read a vector of CST nodes into a vector of Clojure forms. Filters out discard nodes and no-match sentinels at the top level, and splices #?@ results.
(read-node node opts)Read a single CST node into a Clojure form.
Read a single CST node into a Clojure form.
cljdoc builds & hosts documentation for Clojure/Script libraries
| Ctrl+k | Jump to recent docs |
| ← | Move to previous article |
| → | Move to next article |
| Ctrl+/ | Jump to the search field |