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