aboutsummaryrefslogtreecommitdiffstats
path: root/src/parser.h
diff options
context:
space:
mode:
authorBad Diode <bd@badd10de.dev>2021-10-30 08:36:14 +0200
committerBad Diode <bd@badd10de.dev>2021-10-30 08:36:14 +0200
commitf17b11003fe384b49a7bf844824f23167b6095e0 (patch)
tree7129ee8267bf8327d608c1d3a927295929b24631 /src/parser.h
parent4ebcd99d1fadac72ea58ea46012a86c5319ef7e7 (diff)
downloadbdl-f17b11003fe384b49a7bf844824f23167b6095e0.tar.gz
bdl-f17b11003fe384b49a7bf844824f23167b6095e0.zip
Add parsing of if expressions
Diffstat (limited to 'src/parser.h')
-rwxr-xr-xsrc/parser.h8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/parser.h b/src/parser.h
index 17bd6d6..b2b07c8 100755
--- a/src/parser.h
+++ b/src/parser.h
@@ -12,6 +12,7 @@ typedef enum ObjectType {
12 OBJ_TYPE_STRING, 12 OBJ_TYPE_STRING,
13 OBJ_TYPE_PAIR, 13 OBJ_TYPE_PAIR,
14 OBJ_TYPE_LAMBDA, 14 OBJ_TYPE_LAMBDA,
15 OBJ_TYPE_IF,
15} ObjectType; 16} ObjectType;
16 17
17typedef struct Object { 18typedef struct Object {
@@ -35,6 +36,13 @@ typedef struct Object {
35 struct Object **params; 36 struct Object **params;
36 struct Object **body; 37 struct Object **body;
37 }; 38 };
39
40 // OBJ_TYPE_IF
41 struct {
42 struct Object *condition;
43 struct Object *expr_true;
44 struct Object *expr_false;
45 };
38 }; 46 };
39 47
40 size_t line; 48 size_t line;