diff options
author | Adrian Kummerlaender | 2017-04-16 13:29:23 +0200 |
---|---|---|
committer | Adrian Kummerlaender | 2017-04-16 13:29:23 +0200 |
commit | fe08adffcf1446dce2a7d366f7f12c90fdce7e58 (patch) | |
tree | 373ce479b39fb734e879044bd3f0ef3b1f21b605 /source/primitives/eval.d | |
parent | 44f419264898f84fe5536f3ea159c18b381e6083 (diff) | |
download | slang-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.d | 39 |
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(); - } -} |