packages/parser/README.md
The package exports a parse function that has two parameters:
declare function parse<T extends DiagramAST>(
diagramType: keyof typeof initializers,
text: string
): T;
sequenceDiagram
actor Package
participant Module
participant TokenBuilder
participant Lexer
participant Parser
participant ValueConverter
Package ->> Module: Create services
Module ->> TokenBuilder: Override or/and
reorder rules
TokenBuilder ->> Lexer: Read the string and transform
it into a token stream
Lexer ->> Parser: Parse token
stream into AST
Parser ->> ValueConverter: Clean/modify tokenized
rules returned value
ValueConverter -->> Package: Return AST
When to override TokenBuilder?
When to override Lexer?
When to override LangiumParser?
When to override ValueConverter?