diff options
Diffstat (limited to 'src/bootstrap/environment.h')
-rw-r--r-- | src/bootstrap/environment.h | 27 |
1 files changed, 0 insertions, 27 deletions
diff --git a/src/bootstrap/environment.h b/src/bootstrap/environment.h deleted file mode 100644 index 5ee21ad..0000000 --- a/src/bootstrap/environment.h +++ /dev/null | |||
@@ -1,27 +0,0 @@ | |||
1 | #ifndef BDL_ENVIRONMENT_H | ||
2 | #define BDL_ENVIRONMENT_H | ||
3 | |||
4 | #include "objects.h" | ||
5 | |||
6 | typedef struct Environment { | ||
7 | struct Environment *parent; | ||
8 | HashTable *table; | ||
9 | bool marked; | ||
10 | } Environment; | ||
11 | |||
12 | Environment * env_create(Environment *parent); | ||
13 | void env_add_symbol(Environment *env, Object *symbol, Object *value); | ||
14 | Object * env_lookup(Environment *env, Object *symbol); | ||
15 | Object * env_update(Environment *env, Object *symbol, Object *value); | ||
16 | ssize_t env_index_current(Environment *env, Object *symbol); | ||
17 | void env_add_or_update_current(Environment *env, Object *symbol, Object *value); | ||
18 | Environment * env_extend(Environment *parent, Environment *extra); | ||
19 | |||
20 | #define MAKE_ENV_VAR(ENV,STR,VAR) \ | ||
21 | (env_add_symbol((ENV), MAKE_SYM(STR), (VAR))) | ||
22 | #define MAKE_ENV_PROC(ENV,STR,FUN) \ | ||
23 | (env_add_symbol((ENV), MAKE_SYM(STR), make_procedure(FUN))) | ||
24 | |||
25 | #define ENV_BUF_CAP 8 | ||
26 | |||
27 | #endif // BDL_ENVIRONMENT_H | ||