diff --git a/parser/src/ast.rs b/parser/src/ast.rs index fe5845b..a21380d 100644 --- a/parser/src/ast.rs +++ b/parser/src/ast.rs @@ -72,6 +72,11 @@ pub enum TopLevelKind { ModAttribute, Import(Path), Mod(Identifier), + EnumDecl { + visibility: Visibility, + name: Identifier, + fields: Vec, + }, StructDecl { visibility: Visibility, name: Identifier, @@ -87,6 +92,13 @@ pub enum TopLevelKind { }, } +#[derive(Debug, Clone, Serialize)] +pub enum EnumItem { + Named(Identifier), + Tuple(Identifier, Vec), + Struct(Identifier, FieldList), +} + #[derive(Debug, Clone, Serialize)] pub struct ClassConstructor { pub visibility: Visibility,