1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
use std::fmt::{Display, Formatter};
#[derive(Copy, Debug, Clone, PartialEq)]
pub enum Node {
Program,
ModuleDecl,
Stmt,
Stmts,
Expr,
VarDeclarator,
ExprStmt,
ModuleItems,
ArrowExpr,
SetterProp,
GetterProp,
MethodProp,
BinExpr,
LogicalExpr,
CondExpr,
LabeledStmt,
FnExpr,
FnDecl,
WithStmt,
SwitchCase,
SwitchStmt,
DoWhileStmt,
WhileStmt,
ForOfStmt,
ForInStmt,
ForStmt,
IfStmt,
VarDecl,
TryStmt,
ThrowStmt,
ReturnStmt,
DebuggerStmt,
ContinueStmt,
BreakStmt,
PrivateProp,
ClassProp,
ClassDecl,
ClassMethod,
ExportDecl,
ExportDefaultDecl,
BlockStmt,
AssignPat,
}
impl Display for Node {
fn fmt(&self, f: &mut Formatter) -> std::fmt::Result {
write!(f, "{:#?}", self)
}
}