summaryrefslogtreecommitdiff
path: root/MLKLexicalContext.h
diff options
context:
space:
mode:
authorMatthias Andreas Benkard <matthias@benkard.de>2008-06-24 16:16:11 +0200
committerMatthias Andreas Benkard <matthias@benkard.de>2008-06-24 16:16:11 +0200
commit2283b43f733d95fe1c95fd0b7b838a1d450b007a (patch)
treebadefcef9ef5fd625b3de6d4bfee8ee27d72ced3 /MLKLexicalContext.h
parent62b2dbaa3d0500abb51ddf88b2e84ff9ebc22846 (diff)
Make the environment handling system aware of bindings as first-class values.
Diffstat (limited to 'MLKLexicalContext.h')
-rw-r--r--MLKLexicalContext.h12
1 files changed, 7 insertions, 5 deletions
diff --git a/MLKLexicalContext.h b/MLKLexicalContext.h
index 5eca3d6..2bf2bc4 100644
--- a/MLKLexicalContext.h
+++ b/MLKLexicalContext.h
@@ -18,6 +18,8 @@
#import "MLKLispValue.h"
+#import <Foundation/NSSet.h>
+
@class MLKEnvironment, MLKLexicalEnvironment, MLKSymbol, NSLinkedList, NSSet,
NSMutableDictionary, NSString, MLKCons, MLKFuncallable;
@@ -29,8 +31,8 @@
MLKEnvironment *_macros;
MLKEnvironment *_symbolMacros;
MLKEnvironment *_goTags;
- NSMutableDictionary *_functionLocations;
- NSMutableDictionary *_variableLocations;
+ NSMutableSet *_functions;
+ NSMutableSet *_variables;
id _declarations;
MLKLexicalContext *_parent;
}
@@ -58,10 +60,10 @@
-(void) setSymbolMacro:(MLKFuncallable *)function forSymbol:(MLKSymbol *)symbol;
-(id) goTagForSymbol:(MLKSymbol *)symbol;
--(id) variableLocationForSymbol:(MLKSymbol *)symbol;
--(MLKLexicalEnvironment *) instantiateWithVariables:(NSDictionary *)variables
- functions:(NSDictionary *)functions;
+// FIXME?
+//-(MLKLexicalEnvironment *) instantiateWithVariables:(NSDictionary *)variables
+// functions:(NSDictionary *)functions;
-(void) addVariable:(MLKSymbol *)symbol;
-(void) addFunction:(MLKSymbol *)symbol;