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 package;
41mod parse;
42mod payload;
43mod part;
44mod port;
45mod recovery;
46mod requirement;
47mod span;
48mod specialization;
49mod state;
50mod usage;
51mod usecase;
52mod view;
53
54pub(crate) use span::{node_from_to, span_from_to, with_span, Input};
55
56pub use parse::{parse_root, parse_with_diagnostics, ParseResult};
57
58pub(crate) use recovery::{build_recovery_error_node, build_recovery_error_node_from_span};