21 #import <scl/SCCollection.h>
24 #pragma mark Константы класса
29 #define SCDictionaryClass @"SCDictionary"
30 #define SC_KEY_DICTIONARY_LIST @"Dictionary"
31 #define SC_KEY_DICTIONARY_ITEM @"Item %llu"
32 #define SC_KEY_DICTIONARY_ITEM_KEY @"Key %llu"
33 #define SC_KEY_DICTIONARY_COUNT @"Count"
76 NSMutableDictionary *fDictionary;
123 @property (nonatomic, retain, readonly, getter=
keyEnumerator) NSEnumerator *keyEnumerator;
128 #pragma mark Создание словарей
130 + (
SCDictionary *)dictionaryWithContentsOfSerializedFile:(NSString *)path;
131 + (
SCDictionary *)dictionaryWithDataDictionary:(NSDictionary *)dictionary;
132 + (
SCDictionary *)dictionaryWithDataDictionaryFromFile:(NSString *)path;
134 + (
SCDictionary *)dictionaryWithFileStream:(NSString *)path;
137 + (
SCDictionary *)dictionaryWithObject:(
id)object forKey:(NSString *)key;
139 + (
SCDictionary *)dictionaryWithObjects:(
id)objects forKeys:(
id)keys;
140 + (
SCDictionary *)dictionaryWithObjects:(
id)object, ... NS_REQUIRES_NIL_TERMINATION;
141 + (
SCDictionary *)dictionaryWithObjectsAndKeys:(
id)object, ... NS_REQUIRES_NIL_TERMINATION;
142 + (
SCDictionary *)dictionaryWithCollection:(
id)collection;
147 #pragma mark Инициализация словарей
148 - (id)initWithName:(NSString *)name;
149 - (id)initWithObject:(
id)object forKey:(NSString *)key;
150 - (id)initWithObject:(
id)object;
151 - (id)initWithObjects:(
id)objects forKeys:(
id)keys;
152 - (id)initWithObjects:(
id)object, ... NS_REQUIRES_NIL_TERMINATION;
153 - (id)initWithObjectsAndKeys:(
id)object, ... NS_REQUIRES_NIL_TERMINATION;
154 - (id)initWithCollection:(
id)collection;
159 #pragma mark Копирование словарей
163 #pragma mark Сравнение словарей
165 - (BOOL)isEqualToContentsOfDictionary:(
SCDictionary *)dictionary;
168 #pragma mark Добавление и изменение объектов
169 - (void)setObject:(
id)object forKey:(NSString *)key;
170 - (void)setByte:(
SCByte)value forKey:(NSString *)key;
171 - (void)setUByte:(
SCUByte)value forKey:(NSString *)key;
172 - (void)setShort:(
SCShort)value forKey:(NSString *)key;
173 - (void)setUShort:(
SCUShort)value forKey:(NSString *)key;
174 - (void)setInteger:(
SCInteger)value forKey:(NSString *)key;
175 - (void)setUInteger:(
SCUInteger)value forKey:(NSString *)key;
176 - (void)setLong:(
SCLong)value forKey:(NSString *)key;
177 - (void)setULong:(
SCULong)value forKey:(NSString *)key;
178 - (void)setChar:(
char)value forKey:(NSString *)key;
179 - (void)setUnichar:(unichar)value forKey:(NSString *)key;
180 - (void)setCharString:(const
char *)string forKey:(NSString *)key;
181 - (void)setBool:(BOOL)value forKey:(NSString *)key;
182 - (void)setFloat:(
SCFloat)value forKey:(NSString *)key;
183 - (void)setDouble:(
SCDouble)value forKey:(NSString *)key;
184 - (void)setObjects:(
id)objects forKeys:(
id)keys;
185 - (void)setObjectsAndKeys:(
id)object, ... NS_REQUIRES_NIL_TERMINATION;
187 - (void)setValue:(
id)value forKey:(NSString *)key;
188 - (void)setByteValue:(
SCByte)value forKey:(NSString *)key;
189 - (void)setUByteValue:(
SCUByte)value forKey:(NSString *)key;
190 - (void)setShortValue:(
SCShort)value forKey:(NSString *)key;
191 - (void)setUShortValue:(
SCUShort)value forKey:(NSString *)key;
192 - (void)setIntegerValue:(
SCInteger)value forKey:(NSString *)key;
193 - (void)setUIntegerValue:(
SCUInteger)value forKey:(NSString *)key;
194 - (void)setLongValue:(
SCLong)value forKey:(NSString *)key;
195 - (void)setULongValue:(
SCULong)value forKey:(NSString *)key;
196 - (void)setCharValue:(
char)value forKey:(NSString *)key;
197 - (void)setUnicharValue:(unichar)value forKey:(NSString *)key;
198 - (void)setCharStringValue:(const
char *)value forKey:(NSString *)key;
199 - (void)setBoolValue:(BOOL)value forKey:(NSString *)key;
200 - (void)setFloatValue:(
SCFloat)value forKey:(NSString *)key;
201 - (void)setDoubleValue:(
SCDouble)value forKey:(NSString *)key;
202 - (void)setValues:(
id)values forKeys:(
id)keys;
203 - (void)setValuesAndKeys:(
id)object, ... NS_REQUIRES_NIL_TERMINATION;
206 #pragma mark Удаление объектов
207 - (void)removeObjectForKey:(NSString *)key;
208 - (void)removeObjectsForKeys:(
SCArray *)keys;
211 #pragma mark Доступ к объектам
214 - (
SCArray *)allKeysForObject:(
id)object;
216 - (id)objectForKey:(NSString *)key;
217 - (NSString *)stringForKey:(NSString *)key;
218 - (NSNumber *)numberForKey:(NSString *)key;
219 - (
SCByte)byteForKey:(NSString *)key;
220 - (
SCUByte)uByteForKey:(NSString *)key;
221 - (
SCShort)shortForKey:(NSString *)key;
222 - (
SCUShort)uShortForKey:(NSString *)key;
223 - (
SCInteger)integerForKey:(NSString *)key;
225 - (
SCLong)longForKey:(NSString *)key;
226 - (
SCULong)uLongForKey:(NSString *)key;
227 - (char)charForKey:(NSString *)key;
228 - (unichar)unicharForKey:(NSString *)key;
229 - (const
char *)charStringForKey:(NSString *)key;
230 - (BOOL)boolForKey:(NSString *)key;
231 - (
SCFloat)floatForKey:(NSString *)key;
232 - (
SCDouble)doubleForKey:(NSString *)key;
234 - (id)valueForKey:(NSString *)key;
235 - (NSString *)stringValueForKey:(NSString *)key;
236 - (NSNumber *)numberValueForKey:(NSString *)key;
237 - (
SCByte)byteValueForKey:(NSString *)key;
238 - (
SCUByte)uByteValueForKey:(NSString *)key;
239 - (
SCShort)shortValueForKey:(NSString *)key;
240 - (
SCUShort)uShortValueForKey:(NSString *)key;
241 - (
SCInteger)integerValueForKey:(NSString *)key;
242 - (
SCUInteger)uIntegerValueForKey:(NSString *)key;
243 - (
SCLong)longValueForKey:(NSString *)key;
244 - (
SCULong)uLongValueForKey:(NSString *)key;
245 - (char)charValueForKey:(NSString *)key;
246 - (unichar)unicharValueForKey:(NSString *)key;
247 - (const
char *)charStringValueForKey:(NSString *)key;
248 - (BOOL)boolValueForKey:(NSString *)key;
249 - (
SCFloat)floatValueForKey:(NSString *)key;
250 - (
SCDouble)doubleValueForKey:(NSString *)key;
253 #pragma mark Поиск объектов
254 - (BOOL)containsObjectForKey:(NSString *)key;
255 - (BOOL)containsStringForKey:(NSString *)key;
256 - (BOOL)containsNumberForKey:(NSString *)key;
257 - (BOOL)containsAnyObjectForKeys:(
id)keys;
258 - (BOOL)containsAllObjectsForKeys:(
id)keys;
261 #pragma mark Счетчики объектов
262 - (NSEnumerator *)keyEnumerator;
uint64_t SCULong
Definition: SCTypes.h:78
int16_t SCShort
Definition: SCTypes.h:42
int64_t SCLong
Definition: SCTypes.h:54
SCArray * allValues
Definition: SCDictionary.h:108
int32_t SCInteger
Definition: SCTypes.h:48
uint32_t SCUInteger
Definition: SCTypes.h:72
int8_t SCByte
Definition: SCTypes.h:36
uint16_t SCUShort
Definition: SCTypes.h:66
uint8_t SCUByte
Definition: SCTypes.h:60
float_t SCFloat
Definition: SCTypes.h:84
NSEnumerator * keyEnumerator
Definition: SCDictionary.h:123
Abstract collections class.
Definition: SCCollection.h:94
Dictionary class.
Definition: SCDictionary.h:75
Array class.
Definition: SCArray.h:77
SCArray * allKeys
Definition: SCDictionary.h:102
double_t SCDouble
Definition: SCTypes.h:90
Abstract parent class of the stream classes hierarchy.
Definition: SCStream.h:242