sysml_v2_parser/ast/
root.rs1use super::common::{Identification, Import};
2use super::package::{LibraryPackage, Package, PackageBody};
3use crate::ast::core::Node;
4
5#[derive(Debug, Clone, PartialEq, Eq)]
7pub enum RootElement {
8 Package(Node<Package>),
9 LibraryPackage(Node<LibraryPackage>),
10 Namespace(Node<NamespaceDecl>),
11 Import(Node<Import>),
12}
13
14#[derive(Debug, Clone, PartialEq, Eq)]
16pub struct NamespaceDecl {
17 pub identification: Identification,
18 pub body: PackageBody,
19}
20
21#[derive(Debug, Clone, PartialEq, Eq)]
23pub struct RootNamespace {
24 pub elements: Vec<Node<RootElement>>,
25}