oak_actionscript/ast/mod.rs
1//! ActionScript AST 定义
2
3/// ActionScript 语法树的根节点
4#[derive(Debug, Clone, PartialEq)]
5pub struct ActionScriptRoot {
6 /// 源文件中的所有顶级项目
7 pub items: Vec<ActionScriptItem>,
8}
9
10/// ActionScript 顶级项目
11#[derive(Debug, Clone, PartialEq)]
12pub enum ActionScriptItem {
13 /// 类定义
14 Class,
15 /// 接口定义
16 Interface,
17 /// 函数定义
18 Function,
19 /// 变量声明
20 Variable,
21 /// 包声明
22 Package,
23 /// 导入语句
24 Import,
25}
26
27impl Default for ActionScriptRoot {
28 fn default() -> Self {
29 Self { items: Vec::new() }
30 }
31}