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;
27mod diagnostics;
28mod enumeration;
29mod expr;
30mod flow;
31mod import;
32mod individual;
33mod interface;
34mod item;
35mod lex;
36mod metadata;
37mod metadata_annotation;
38mod occurrence;
39mod package;
40mod parse;
41mod part;
42mod port;
43mod recovery;
44mod requirement;
45mod span;
46mod specialization;
47mod state;
48mod usage;
49mod usecase;
50mod view;
51
52pub(crate) use span::{node_from_to, span_from_to, with_span, Input};
53
54pub use parse::{parse_root, parse_with_diagnostics, ParseResult};
55
56pub(crate) use recovery::{build_recovery_error_node, build_recovery_error_node_from_span};