Crate rowan[][src]

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
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
GreenNode

Internal node in the immutable tree. It has other nodes and tokens as children.

GreenNodeBuilder

A builder for a green tree.

GreenNodeData
GreenToken

Leaf node in the immutable tree.

GreenTokenData
SyntaxKind

SyntaxKind is a type tag for each token or node.

SyntaxText
TextRange

A range in text, represented as a pair of TextSize.

TextSize

A measure of text length. Also, equivalently, an index into text.

Enums

Direction
NodeOrToken
TokenAtOffset

There might be zero, one or two leaves at a given offset.

WalkEvent

WalkEvent describes tree walking process.

Traits

TextLen

Primitives with a textual length that can be passed to TextSize::of.