aboutsummaryrefslogtreecommitdiffstats
path: root/main/core/runtime/State.java
diff options
context:
space:
mode:
Diffstat (limited to 'main/core/runtime/State.java')
-rw-r--r--main/core/runtime/State.java10
1 files changed, 9 insertions, 1 deletions
diff --git a/main/core/runtime/State.java b/main/core/runtime/State.java
index d825a3a..8563a77 100644
--- a/main/core/runtime/State.java
+++ b/main/core/runtime/State.java
@@ -1,6 +1,7 @@
package com.jantuomi.interpreter.main.core.runtime;
import com.jantuomi.interpreter.main.core.parser.datatype.DataContainer;
+import com.jantuomi.interpreter.main.core.runtime.builtins.BuiltinManager;
import com.jantuomi.interpreter.main.exception.InterpreterException;
import java.util.Arrays;
@@ -21,7 +22,14 @@ public class State {
private State() {
/* Push global scope onto the stack */
- scopes.push(new Scope());
+ Scope globalScope = new Scope();
+
+ for (Function builtin : BuiltinManager.getInstance().getBuiltins()) {
+ globalScope.addFunction(builtin.getName(), builtin);
+ }
+
+ scopes.push(globalScope);
+
}
private DataContainer resolveSymbol(String symbol) throws InterpreterException {