aboutsummaryrefslogtreecommitdiff
path: root/src/runner/runner.h
diff options
context:
space:
mode:
authorA404M <ahmadmahmoudiprogrammer@gmail.com>2025-05-31 15:09:23 +0330
committerA404M <ahmadmahmoudiprogrammer@gmail.com>2025-05-31 15:09:23 +0330
commitca6f2ec64941953f0111a64b7acf4cf6fb31929a (patch)
tree8c0abdcd8d202cdee295e2f4247ac6d1688a09d8 /src/runner/runner.h
parent3c53293e9b2c2f9106da805d26b5eab9dff56225 (diff)
add array access support to arrays
Diffstat (limited to 'src/runner/runner.h')
-rw-r--r--src/runner/runner.h15
1 files changed, 9 insertions, 6 deletions
diff --git a/src/runner/runner.h b/src/runner/runner.h
index 66ad757..16103cc 100644
--- a/src/runner/runner.h
+++ b/src/runner/runner.h
@@ -3,15 +3,18 @@
#include "compiler/ast-tree.h"
#include <ffi.h>
-void runnerVariableSetValue(AstTreeVariable *variable, AstTree *value);
+void runnerVariableSetValue(AstTreeVariable *variable, AstTree *value,
+ AstTreeScope *scope);
void runnerVariableSetValueWihtoutConstCheck(AstTreeVariable *variable,
- AstTree *value);
+ AstTree *value,
+ AstTreeScope *scope);
AstTree *runnerVariableGetValue(AstTreeVariable *variable);
bool runAstTree(AstTreeRoots roots);
AstTree *runAstTreeFunction(AstTree *tree, AstTree **arguments,
- size_t arguments_size, bool isComptime);
+ size_t arguments_size, AstTreeScope *scope,
+ bool isComptime);
AstTree *runAstTreeBuiltin(AstTree *tree, AstTreeScope *scope,
AstTree **arguments);
@@ -21,15 +24,15 @@ AstTree *runAstTreeCFunction(AstTree *tree, AstTree **arguments,
AstTree *runExpression(AstTree *expr, AstTreeScope *scope, bool *shouldRet,
bool isLeft, bool isComptime, u32 *breakCount,
- bool *shouldContinue,bool needOwnership);
+ bool *shouldContinue, bool needOwnership);
AstTree *getForVariable(AstTree *expr, AstTreeScope *scope, bool *shouldRet,
bool isLeft, bool isComptime, u32 *breakCount,
- bool *shouldContinue, bool isLazy,bool needOwnership);
+ bool *shouldContinue, bool isLazy, bool needOwnership);
bool discontinue(bool shouldRet, u32 breakCount);
-AstTree *toRawValue(AstTree *value);
+AstTree *toRawValue(AstTree *value, AstTreeScope *scope);
AstTree *castTo(AstTree *value, AstTree *to);