summaryrefslogtreecommitdiff
path: root/src/core/function.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/core/function.c')
-rw-r--r--src/core/function.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/core/function.c b/src/core/function.c
index a528aa1..8541960 100644
--- a/src/core/function.c
+++ b/src/core/function.c
@@ -524,6 +524,7 @@ function_process(Interpret *p_interpret, Token *p_token_op,
_Bool
function_is_buildin(Token *p_token_ident) {
+ /* TODO: optimize this function */
if (strcmp("assert", token_get_val(p_token_ident)) == 0)
return (true);
@@ -563,6 +564,9 @@ function_is_buildin(Token *p_token_ident) {
if (strcmp("put", token_get_val(p_token_ident)) == 0)
return (true);
+ if (strcmp("scope", token_get_val(p_token_ident)) == 0)
+ return (true);
+
if (strcmp("say", token_get_val(p_token_ident)) == 0)
return (true);
@@ -751,6 +755,9 @@ function_process_buildin(Interpret *p_interpret, Token *p_token_ident,
}
stackiterator_delete(p_iter);
+ } else if (strcmp("scope", token_get_val(p_token_ident)) == 0) {
+ scope_print(p_interpret->p_scope);
+
} else if (strcmp("say", token_get_val(p_token_ident)) == 0) {
StackIterator *p_iter = stackiterator_new(p_stack_args);
while (stackiterator_has_next(p_iter)) {