@@ -4,6 +4,88 @@ derive_alias! {
4
4
#[ derive( CommonTraits !) ] = #[ derive( Clone , Debug , PartialEq , Eq , Serialize , Deserialize , Hash ) ] ;
5
5
}
6
6
7
+ #[ derive( CommonTraits !, Default ) ]
8
+ pub enum Node {
9
+ #[ default]
10
+ Empty ,
11
+ StoredDefinition ( StoredDefinition ) ,
12
+ ClassDefinition ( ClassDefinition ) ,
13
+ ClassSpecifier ( ClassSpecifier ) ,
14
+ CompositionPart ( CompositionPart ) ,
15
+ Element ( Element ) ,
16
+ ComponentDeclaration ( ComponentDeclaration ) ,
17
+ ClassPrefixes ( ClassPrefixes ) ,
18
+ ComponentClause ( ComponentClause ) ,
19
+ ComponentClause1 ( ComponentClause1 ) ,
20
+ Declaration ( Declaration ) ,
21
+ TypeSpecifier ( TypeSpecifier ) ,
22
+ Equation ( Equation ) ,
23
+ IfEquationBlock ( IfEquationBlock ) ,
24
+ Statement ( Statement ) ,
25
+ IfStatementBlock ( IfStatementBlock ) ,
26
+ Expression ( Expression ) ,
27
+ IfExpressionBlock ( IfExpressionBlock ) ,
28
+ ComponentReference ( ComponentReference ) ,
29
+ RefPart ( RefPart ) ,
30
+ Subscript ( Subscript ) ,
31
+ Argument ( Argument ) ,
32
+ Modification ( Modification ) ,
33
+ ModExpr ( ModExpr ) ,
34
+ Description ( Description ) ,
35
+ TypePrefix ( TypePrefix ) ,
36
+ ForIndex ( ForIndex ) ,
37
+ Span ( Span ) ,
38
+ ElementFlags ( ElementFlags ) ,
39
+ Causality ( Causality ) ,
40
+ Variability ( Variability ) ,
41
+ Visibility ( Visibility ) ,
42
+ Connection ( Connection ) ,
43
+ UnaryOp ( UnaryOp ) ,
44
+ BinaryOp ( BinaryOp ) ,
45
+ ClassType ( ClassType ) ,
46
+ }
47
+
48
+ #[ derive( Default , Clone , Debug , PartialEq , Eq , Hash ) ]
49
+ pub enum NodeRef < ' a > {
50
+ #[ default]
51
+ Empty ,
52
+ StoredDefinition ( & ' a StoredDefinition ) ,
53
+ ClassDefinition ( & ' a ClassDefinition ) ,
54
+ ClassSpecifier ( & ' a ClassSpecifier ) ,
55
+ CompositionPart ( & ' a CompositionPart ) ,
56
+ Element ( & ' a Element ) ,
57
+ ComponentDeclaration ( & ' a ComponentDeclaration ) ,
58
+ ClassPrefixes ( & ' a ClassPrefixes ) ,
59
+ ComponentClause ( & ' a ComponentClause ) ,
60
+ ComponentClause1 ( & ' a ComponentClause1 ) ,
61
+ Declaration ( & ' a Declaration ) ,
62
+ TypeSpecifier ( & ' a TypeSpecifier ) ,
63
+ Equation ( & ' a Equation ) ,
64
+ IfEquationBlock ( & ' a IfEquationBlock ) ,
65
+ Statement ( & ' a Statement ) ,
66
+ IfStatementBlock ( & ' a IfStatementBlock ) ,
67
+ Expression ( & ' a Expression ) ,
68
+ IfExpressionBlock ( & ' a IfExpressionBlock ) ,
69
+ ComponentReference ( & ' a ComponentReference ) ,
70
+ RefPart ( & ' a RefPart ) ,
71
+ Subscript ( & ' a Subscript ) ,
72
+ Argument ( & ' a Argument ) ,
73
+ Modification ( & ' a Modification ) ,
74
+ ModExpr ( & ' a ModExpr ) ,
75
+ Description ( & ' a Description ) ,
76
+ TypePrefix ( & ' a TypePrefix ) ,
77
+ ForIndex ( & ' a ForIndex ) ,
78
+ Span ( & ' a Span ) ,
79
+ ElementFlags ( & ' a ElementFlags ) ,
80
+ Causality ( & ' a Causality ) ,
81
+ Variability ( & ' a Variability ) ,
82
+ Visibility ( & ' a Visibility ) ,
83
+ Connection ( & ' a Connection ) ,
84
+ UnaryOp ( & ' a UnaryOp ) ,
85
+ BinaryOp ( & ' a BinaryOp ) ,
86
+ ClassType ( & ' a ClassType ) ,
87
+ }
88
+
7
89
// ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
8
90
// File Level Nodes
9
91
0 commit comments