Skip to main content

sysml_v2_parser/parser/
mod.rs

1//! Nom-based parser for SysML v2 textual notation.
2//!
3//! Organized into modules:
4//! - [lex]: whitespace, comments, names, qualified names, skip helpers
5//! - [diagnostics]: nom error mapping, diagnostic classification, deduplication
6//! - [recovery]: recovery error nodes for structured body parsing
7//! - [collect_errors]: aggregate diagnostics from AST recovery nodes
8//! - [parse]: `parse_root` and `parse_with_diagnostics` entry points
9//! - [attribute]: attribute definition and usage
10//! - [import]: import and relationship body
11//! - [part]: part definition and part usage
12//! - [package]: package and root namespace
13
14mod action;
15mod alias;
16mod allocation;
17mod attribute;
18mod bnf_surface;
19mod body;
20mod case;
21mod collect_errors;
22mod connection;
23mod constraint;
24mod definition_header;
25mod definition_prefix;
26mod dependency;
27pub mod diagnostic_catalog;
28mod diagnostics;
29mod enumeration;
30mod expr;
31mod flow;
32mod import;
33mod individual;
34mod interface;
35mod item;
36mod lex;
37mod metadata;
38mod metadata_annotation;
39mod occurrence;
40mod occurrence_body;
41mod package;
42mod parse;
43mod payload;
44mod part;
45mod port;
46mod recovery;
47mod requirement;
48mod span;
49mod specialization;
50mod state;
51mod usage;
52mod usecase;
53mod view;
54
55pub(crate) use span::{node_from_to, span_from_to, with_span, Input};
56
57pub use parse::{parse_root, parse_with_diagnostics, ParseResult};
58
59pub(crate) use recovery::{build_recovery_error_node, build_recovery_error_node_from_span};