From f590e3c42ea94f81cd06ca5ef8aba892ace07111 Mon Sep 17 00:00:00 2001 From: servostar Date: Tue, 28 May 2024 13:44:40 +0200 Subject: [PATCH] fixed: missing box member access in assignment --- src/set/types.h | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/src/set/types.h b/src/set/types.h index 828783a..cc230f0 100644 --- a/src/set/types.h +++ b/src/set/types.h @@ -484,8 +484,22 @@ typedef struct Branch_t { // | Statements | // '------------------------------------------------' +typedef enum AssignmentKind_t { + // direct access to a variable + AssignmentKindVariable, + // access to a member of a box + // can be nested such as: foo.bar.kee + AssignmentKindBoxMember +} AssignmentKind; + +// Can either be a direct variable access or +// a nested box member access typedef struct Assignment_t { Variable* variable; + AssignmentKind kind; + union AssignmentImplementation_t { + BoxAccess accees; + } impl; Expression value; AST_NODE_PTR nodePtr; } Assignment;