summaryrefslogtreecommitdiff
path: root/MLKInterpreter.h
diff options
context:
space:
mode:
authorMatthias Andreas Benkard <matthias@benkard.de>2008-08-03 12:24:25 +0200
committerMatthias Andreas Benkard <matthias@benkard.de>2008-08-03 12:24:25 +0200
commitf57e13ed6a54ca4aa948f4fff0ffcefb0aacc2c8 (patch)
tree95ef2e8dbcde5eec40713112c6d54c5330defe1a /MLKInterpreter.h
parentd1db5cd7f2462e615a205cc910cf07755d1fa428 (diff)
Add EVAL-WHEN.
Diffstat (limited to 'MLKInterpreter.h')
-rw-r--r--MLKInterpreter.h19
1 files changed, 18 insertions, 1 deletions
diff --git a/MLKInterpreter.h b/MLKInterpreter.h
index 8ff119f..6abf52b 100644
--- a/MLKInterpreter.h
+++ b/MLKInterpreter.h
@@ -24,6 +24,18 @@
#import <Foundation/NSObject.h>
+enum MLKProcessingMode
+{
+ // Compiler
+ compile_time_too_mode,
+ not_compile_time_mode,
+ expand_mode,
+
+ // Evaluator
+ eval_mode
+};
+
+
@interface MLKInterpreter : NSObject
+(void) initialize;
@@ -35,6 +47,11 @@
inLexicalContext:(MLKLexicalContext *)context
withEnvironment:(MLKLexicalEnvironment *)lexenv
expandOnly:(BOOL)expandOnly;
-
+
++(NSArray*) eval:(id)program
+ inLexicalContext:(MLKLexicalContext *)context
+ withEnvironment:(MLKLexicalEnvironment *)lexenv
+ mode:(enum MLKProcessingMode)mode;
+
+(BOOL) load:(MLKStream *)stream verbose:(BOOL)verbose print:(BOOL)print;
@end