Expand description
A generic library for lossless syntax trees.
See examples/s_expressions.rs
for a tutorial.
Re-exports§
pub use crate::api::Language;
pub use crate::api::SyntaxElement;
pub use crate::api::SyntaxElementChildren;
pub use crate::api::SyntaxNode;
pub use crate::api::SyntaxNodeChildren;
pub use crate::api::SyntaxToken;
Modules§
- api
- ast
- Working with abstract syntax trees.
- cursor
- Implementation of the cursors – API for convenient access to syntax trees.
Structs§
- Checkpoint
- A checkpoint for maybe wrapping a node. See
GreenNodeBuilder::checkpoint
for details. - Children
- Green
Node - Internal node in the immutable tree. It has other nodes and tokens as children.
- Green
Node Builder - A builder for a green tree.
- Green
Node Data - Green
Token - Leaf node in the immutable tree.
- Green
Token Data - Node
Cache - Interner for GreenTokens and GreenNodes
- Syntax
Kind - SyntaxKind is a type tag for each token or node.
- Syntax
Text - Text
Range - A range in text, represented as a pair of
TextSize
. - Text
Size - A measure of text length. Also, equivalently, an index into text.
Enums§
- Direction
- Node
OrToken - Token
AtOffset - There might be zero, one or two leaves at a given offset.
- Walk
Event WalkEvent
describes tree walking process.
Traits§
- TextLen
- Primitives with a textual length that can be passed to
TextSize::of
.