summaryrefslogtreecommitdiff
path: root/MLKLexicalContext.h
diff options
context:
space:
mode:
authorMatthias Andreas Benkard <matthias@benkard.de>2008-06-27 23:53:25 +0200
committerMatthias Andreas Benkard <matthias@benkard.de>2008-06-27 23:53:25 +0200
commit05fc2a9fd9326bd059681b7684a74e1ad1de1ec6 (patch)
treed01fa6dbe3881f44ea6145cf79c007b12b585c8d /MLKLexicalContext.h
parent7ad928e57d7ed8818040327a31b7dad5ec04ec10 (diff)
MLKInterpreter: Fix macro support.
Diffstat (limited to 'MLKLexicalContext.h')
-rw-r--r--MLKLexicalContext.h10
1 files changed, 6 insertions, 4 deletions
diff --git a/MLKLexicalContext.h b/MLKLexicalContext.h
index 552e77d..d7335e6 100644
--- a/MLKLexicalContext.h
+++ b/MLKLexicalContext.h
@@ -19,6 +19,7 @@
#import "MLKFuncallable.h"
#import "MLKLispValue.h"
+#import <Foundation/NSArray.h>
#import <Foundation/NSSet.h>
@class MLKEnvironment, MLKLexicalEnvironment, MLKSymbol, NSLinkedList, NSSet,
@@ -27,8 +28,8 @@
@interface MLKLexicalContext : MLKLispValue
{
- NSArray *_knownMacros;
- NSArray *_knownSymbolMacros;
+ NSMutableSet *_knownMacros;
+ NSMutableSet *_knownSymbolMacros;
MLKEnvironment *_macros;
MLKEnvironment *_symbolMacros;
MLKEnvironment *_goTags;
@@ -62,12 +63,13 @@
-(BOOL) symbolNamesMacro:(MLKSymbol *)symbol;
-(BOOL) symbolNamesSymbolMacro:(MLKSymbol *)symbol;
--(id) macroForSymbol:(MLKSymbol *)symbol;
+-(id <MLKFuncallable>) macroForSymbol:(MLKSymbol *)symbol;
-(void) setMacro:(id <MLKFuncallable>)function forSymbol:(MLKSymbol *)symbol;
-(void) addMacro:(id <MLKFuncallable>)value forSymbol:(MLKSymbol *)symbol;
--(id) symbolMacroForSymbol:(MLKSymbol *)symbol;
+-(id <MLKFuncallable>) symbolMacroForSymbol:(MLKSymbol *)symbol;
-(void) setSymbolMacro:(id <MLKFuncallable>)function forSymbol:(MLKSymbol *)symbol;
+-(void) addSymbolMacro:(id <MLKFuncallable>)value forSymbol:(MLKSymbol *)symbol;
-(id) goTagForSymbol:(MLKSymbol *)symbol;