00001
00002
00003
00004
00005
00006
00007
00008
00009 #import <Foundation/Foundation.h>
00010
00016 @interface OrderedDictionary : NSDictionary {
00017
00018 NSMutableDictionary *_values;
00019 NSMutableArray *_keys;
00020 }
00021
00023 - (id)keyAtIndex:(NSUInteger)index;
00025 - (id)objectAtIndex:(NSUInteger)index;
00027 - (NSEnumerator *)reverseKeyEnumerator;
00029 - (NSEnumerator *)reverseObjectEnumerator;
00030
00031 @end
00032
00033
00043 @interface MutableOrderedDictionary : OrderedDictionary {
00044
00045 }
00046
00047 - (void)addEntriesFromDictionary:(NSDictionary *)otherDictionary;
00048 - (void)removeAllObjects;
00049 - (void)removeObjectForKey:(id)key;
00050 - (void)removeObjectsForKeys:(NSArray *)keyArray;
00051 - (void)setDictionary:(NSDictionary *)otherDictionary;
00052 - (void)setObject:(id)object forKey:(id)key;
00053 - (void)setValue:(id)value forKey:(NSString *)key;
00054
00056 - (void)insertObject:(id)object forKey:(id)key atIndex:(NSUInteger)index;
00058 - (void)removeObjectAtIndex:(NSUInteger)index;
00059
00060 @end
00061
00062
00068 @interface OrderedMutableDictionary : NSMutableDictionary {
00069
00070 NSMutableDictionary *_values;
00071 NSMutableArray *_keys;
00072 }
00073
00075 - (id)keyAtIndex:(NSUInteger)index;
00077 - (id)objectAtIndex:(NSUInteger)index;
00079 - (NSEnumerator *)reverseKeyEnumerator;
00081 - (NSEnumerator *)reverseObjectEnumerator;
00083 - (void)insertObject:(id)object forKey:(id)key atIndex:(NSUInteger)index;
00085 - (void)removeObjectAtIndex:(NSUInteger)index;
00086
00087 @end