From 2ca159fb5c2a52f33c499eef1fa50a98a863b0f0 Mon Sep 17 00:00:00 2001 From: Kimplul Date: Mon, 3 Apr 2023 16:00:34 +0300 Subject: initial union testing --- include/cu/ast.h | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'include/cu/ast.h') diff --git a/include/cu/ast.h b/include/cu/ast.h index f9e8492..44850b6 100644 --- a/include/cu/ast.h +++ b/include/cu/ast.h @@ -115,6 +115,7 @@ enum ast_type_kind { AST_TYPE_LAMBDA, AST_TYPE_PROC, AST_TYPE_STRUCT, + AST_TYPE_GENERIC, AST_TYPE_ENUM, AST_TYPE_SIGN, }; @@ -140,6 +141,7 @@ enum ast_flag { AST_FLAG_INIT = (1 << 10), AST_FLAG_MEMBER = (1 << 11), AST_FLAG_SHARED = (1 << 12), + AST_FLAG_GENERIC = (1 << 13), }; struct ast_node; @@ -308,6 +310,11 @@ struct ast_type { struct ast_node *ret; } lambda; + struct { + struct ast_node *id; + struct ast_node *args; + } generic; + struct { struct ast_node *id; struct ast_node *impls; -- cgit v1.3