aboutsummaryrefslogtreecommitdiff
path: root/source/primitives/eval.d
diff options
context:
space:
mode:
authorAdrian Kummerlaender2017-04-16 13:29:23 +0200
committerAdrian Kummerlaender2017-04-16 13:29:23 +0200
commitfe08adffcf1446dce2a7d366f7f12c90fdce7e58 (patch)
tree373ce479b39fb734e879044bd3f0ef3b1f21b605 /source/primitives/eval.d
parent44f419264898f84fe5536f3ea159c18b381e6083 (diff)
downloadslang-fe08adffcf1446dce2a7d366f7f12c90fdce7e58.tar
slang-fe08adffcf1446dce2a7d366f7f12c90fdce7e58.tar.gz
slang-fe08adffcf1446dce2a7d366f7f12c90fdce7e58.tar.bz2
slang-fe08adffcf1446dce2a7d366f7f12c90fdce7e58.tar.lz
slang-fe08adffcf1446dce2a7d366f7f12c90fdce7e58.tar.xz
slang-fe08adffcf1446dce2a7d366f7f12c90fdce7e58.tar.zst
slang-fe08adffcf1446dce2a7d366f7f12c90fdce7e58.zip
Clean up state, primitives, processing distinction
Diffstat (limited to 'source/primitives/eval.d')
-rw-r--r--source/primitives/eval.d39
1 files changed, 0 insertions, 39 deletions
diff --git a/source/primitives/eval.d b/source/primitives/eval.d
deleted file mode 100644
index a18e897..0000000
--- a/source/primitives/eval.d
+++ /dev/null
@@ -1,39 +0,0 @@
-module primitives.eval;
-
-import std.variant;
-
-import state.stack;
-
-import definition = state.definition;
-import variable = state.variable;
-
-import core = primitives.core;
-import conditional = primitives.conditional;
-
-bool evaluate(Token token) {
- if ( definition.handle(token) ) {
- return true;
- }
-
- if ( conditional.handle(token) ) {
- return true;
- }
-
- if ( variable.handle(token) ) {
- return true;
- }
-
- return token.visit!(
- (int value) => false,
- (bool value) => false,
- (string word ) => core.handle(word)
- );
-}
-
-Stack!Token result() {
- if ( conditional.dischargeable ) {
- return conditional.discharge;
- } else {
- return Stack!Token();
- }
-}