diff options
author | Matthias Andreas Benkard <matthias@benkard.de> | 2008-06-23 19:02:42 +0200 |
---|---|---|
committer | Matthias Andreas Benkard <matthias@benkard.de> | 2008-06-23 19:02:42 +0200 |
commit | 3aa255629a915314b71c04820833b683ff9234fc (patch) | |
tree | ef0ed440cadee353c3800cd8232ee483bf7508c0 /MLKEnvironment.m | |
parent | 1c181e7b07ee551d6f76416972fe38ff411ffc40 (diff) |
Initialise the global environment on startup.
Diffstat (limited to 'MLKEnvironment.m')
-rw-r--r-- | MLKEnvironment.m | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/MLKEnvironment.m b/MLKEnvironment.m index 314a46f..2dab2aa 100644 --- a/MLKEnvironment.m +++ b/MLKEnvironment.m @@ -19,6 +19,7 @@ #import <Foundation/NSArray.h> #import <Foundation/NSDictionary.h> #import <Foundation/NSNull.h> +#import <Foundation/NSSet.h> #import "MLKEnvironment.h" #import "MLKUndefinedVariableException.h" @@ -63,6 +64,14 @@ static id UNBOUND; return _parent; } +-(NSSet *) bindings +{ + NSSet *set = [NSSet setWithArray:[_bindings allKeys]]; + return (_parent + ? (id)[set setByAddingObjectsFromSet:[_parent bindings]] + : (id)set); +} + -(void) setValue:(id)value forBinding:(MLKSymbol *)symbol; { [self setBinding:symbol to:value inEnvironment:self]; |