Skip to main content

Crate zerodds_lang_cst

Crate zerodds_lang_cst 

Source
Expand description

Crate zerodds-lang-cst. Safety classification: SAFE.

Concrete syntax trees for the seventeen target languages. Built, never parsed.

Each language gets the tree its own syntax needs. There is no shared target model: with one, the language-specific part does not disappear, it moves into the renderer, which is where it stops being reviewable.

§Spec

  • docs/specs/zerodds-lang-cst-1.0.md §1.

§Layer position

Layer 0 of the backend arc. Depends on nothing — not even on the common AST, so that a tree can be built and rendered without a model and a renderer cannot reach back into one.

Re-exports§

pub use common::Doc;
pub use common::Ident;
pub use common::Language;
pub use common::Literal;
pub use common::Path;
pub use common::Visibility;

Modules§

ada
The Ada concrete syntax tree. Spec §1.
ada83
The Ada 83 concrete syntax tree. Spec §1.
c
The C concrete syntax tree. Spec §1.
common
What the four trees share. Spec §1.
cpp
The C++ concrete syntax tree. Spec §1.
csharp
The C# concrete syntax tree. Spec §1.
d
The D concrete syntax tree. Spec §1.
elixir
The Elixir concrete syntax tree. Spec §1.
fsharp
The F# concrete syntax tree. Spec §1.
go
The Go concrete syntax tree. Spec §1.
java
The Java concrete syntax tree. Spec §1.
julia
The Julia concrete syntax tree. Spec §1.
kotlin
The Kotlin concrete syntax tree. Spec §1.
lua
The Lua concrete syntax tree. Spec §1.
nim
The Nim concrete syntax tree. Spec §1.
node
The Node (plain JavaScript) concrete syntax tree. Spec §1.
ocaml
The OCaml concrete syntax tree. Spec §1.
python
The Python concrete syntax tree. Spec §1.
rust
The Rust concrete syntax tree. Spec §1.
swift
The Swift concrete syntax tree. Spec §1.
typescript
The TypeScript concrete syntax tree. Spec §1.
zig
The Zig concrete syntax tree. Spec §1.