Skip to main content

Crate sysml_v2_parser

Crate sysml_v2_parser 

Source
Expand description

SysML v2 textual notation parser.

Reusable library for parsing SysML v2 textual syntax into an AST.

Re-exports§

pub use ast::ActionDef;
pub use ast::ActionDefBody;
pub use ast::ActionDefBodyElement;
pub use ast::ActionUsage;
pub use ast::ActionUsageBody;
pub use ast::ActionUsageBodyElement;
pub use ast::AliasBody;
pub use ast::AliasDef;
pub use ast::AllocationDef;
pub use ast::AllocationUsage;
pub use ast::AnalysisCaseDef;
pub use ast::AnalysisCaseUsage;
pub use ast::Annotation;
pub use ast::AstNode;
pub use ast::AttributeBody;
pub use ast::AttributeDef;
pub use ast::AttributeUsage;
pub use ast::Bind;
pub use ast::CaseDef;
pub use ast::CaseUsage;
pub use ast::CommentAnnotation;
pub use ast::Connect;
pub use ast::ConnectBody;
pub use ast::ConnectStmt;
pub use ast::DocComment;
pub use ast::EndDecl;
pub use ast::Expression;
pub use ast::FilterMember;
pub use ast::FilterPackageMember;
pub use ast::FirstMergeBody;
pub use ast::FirstStmt;
pub use ast::Flow;
pub use ast::FlowDef;
pub use ast::FlowUsage;
pub use ast::Identification;
pub use ast::Import;
pub use ast::InOut;
pub use ast::InOutDecl;
pub use ast::InterfaceDef;
pub use ast::InterfaceDefBody;
pub use ast::InterfaceDefBodyElement;
pub use ast::InterfaceUsage;
pub use ast::InterfaceUsageBodyElement;
pub use ast::MergeStmt;
pub use ast::NamespaceDecl;
pub use ast::Node;
pub use ast::OccurrenceBodyElement;
pub use ast::OccurrenceUsage;
pub use ast::OccurrenceUsageBody;
pub use ast::Package;
pub use ast::PackageBody;
pub use ast::PackageBodyElement;
pub use ast::ParseErrorNode;
pub use ast::PartDef;
pub use ast::PartDefBody;
pub use ast::PartDefBodyElement;
pub use ast::PartUsage;
pub use ast::PartUsageBody;
pub use ast::PartUsageBodyElement;
pub use ast::Perform;
pub use ast::PerformBody;
pub use ast::PerformBodyElement;
pub use ast::PerformInOutBinding;
pub use ast::PortBody;
pub use ast::PortDef;
pub use ast::PortDefBody;
pub use ast::PortDefBodyElement;
pub use ast::PortUsage;
pub use ast::RefBody;
pub use ast::RefDecl;
pub use ast::RequireConstraint;
pub use ast::RequireConstraintBody;
pub use ast::RequirementDef;
pub use ast::RequirementDefBody;
pub use ast::RequirementDefBodyElement;
pub use ast::RequirementUsage;
pub use ast::RootElement;
pub use ast::RootNamespace;
pub use ast::Span;
pub use ast::TextualRepresentation;
pub use ast::VerificationCaseDef;
pub use ast::VerificationCaseUsage;
pub use ast::Visibility;
pub use error::DiagnosticSeverity;
pub use error::ParseError;
pub use parser::parse_root;
pub use parser::parse_with_diagnostics;
pub use parser::ParseResult;

Modules§

ast
Abstract syntax tree types for SysML v2 textual notation.
error
Parse error types for SysML v2 parser.
parser
Nom-based parser for SysML v2 textual notation.

Functions§

parse
Parse a SysML v2 textual input into a root namespace AST.
parse_for_editor
Parse for editor/LSP use: returns a partial AST plus diagnostics.