1 
2 #import "AMutableArray.h"
3 #import "AMutableDictionary.h"
4 #import "LinkBase.h"
5 /**
6  * Sometimes we need to map a key to a value but key is two pieces of data.
7  * This nested hash table saves creating a single key each time we access
8  * map; avoids mem creation.
9  */
10 
11 @class AMutableArray;
12 
13 @interface DoubleKeyMap : LinkBase {
14     AMutableDictionary *data;
15 }
16 
17 - (id) init;
18 - (id) setObject:(id)v forKey1:(id)k1 forKey2:(NSString *)k2;
19 - (id) objectForKey1:(id)k1 forKey2:(id)k2;
20 - (AMutableDictionary *) objectForKey:(id)k1;
21 - (NSArray *) valuesForKey:(id)k1;
22 - (NSArray *) allKeys1;
23 - (AMutableArray *) allKeys2:(id)k1;
24 - (NSArray *) values;
25 
26 @property (retain) AMutableDictionary *data;
27 
28 @end
29