Skip to main content

Crate syster

Crate syster 

Source
Expand description

§syster-base

Core library for SysML v2 and KerML parsing, AST, and semantic analysis.

§Module Structure (dependency order)

ide       → IDE features (completion, hover, goto-def)
  ↓
hir       → Semantic model with Salsa queries
  ↓
project   → Workspace loading, stdlib resolution
  ↓
syntax    → AST types, Span/Position, ParseError/ParseResult
  ↓
parser    → Logos lexer, recursive-descent parser, grammar traits
  ↓
base      → Primitives (FileId, Name interning, TextRange)

Re-exports§

pub use parser::keywords;
pub use base::FileId;
pub use base::Interner;
pub use base::LineCol;
pub use base::LineIndex;
pub use base::Name;
pub use base::Position;
pub use base::Span;

Modules§

base
Foundation types: FileId, Name interning, TextRange Foundation types for the Syster toolchain.
hir
High-level IR: Salsa-based semantic model High-level IR (HIR) — Semantic model with Salsa queries.
ide
IDE features: completion, hover, goto-definition, find-references IDE features — High-level APIs for LSP handlers.
parser
Parser: Logos lexer, recursive-descent parser, grammar traits Rowan-based incremental parser for SysML v2
project
Project management: workspace loading, stdlib
syntax
Syntax: AST types, Span/Position, ParseError/ParseResult

Structs§

TextRange
A range in text, represented as a pair of TextSize.
TextSize
A measure of text length. Also, equivalently, an index into text.