|
Samond Classes Library 1.1.6-RELEASE build 132
|
00001 // 00002 // SCDictionary.h 00003 // scl 00004 // 00005 // Created by Viacheslav Smolensky on 13.04.12. 00006 // Copyright (c) 2007 - 2014 by Samond Development Corporation. All rights reserved. 00007 // 00008 00015 #import <scl/SCCollection.h> 00016 00017 #define SCDictionaryClass @"SCDictionary" ///< SCDictionary class name 00018 00029 @interface SCDictionary : SCCollection { 00030 NSMutableDictionary *fDictionary; // Internal dictionary 00031 } 00032 #pragma mark - 00033 #pragma mark Class properties 00034 #if (__MAC_OS_X_VERSION_MIN_REQUIRED > 1040) || IOS_TARGET 00035 // Dictionary name property 00036 @property (retain, getter=dictionaryName, setter=setDictionaryName:) NSString *dictionaryName; 00037 #endif 00038 00039 #pragma mark - 00040 #pragma mark Creating Dictionary 00041 00047 + (SCDictionary *)dictionaryWithDataDictionary:(NSDictionary *)dictionary; 00048 00054 + (SCDictionary *)dictionaryWithDataDictionaryFromFile:(NSString *)path; 00055 00061 + (SCDictionary *)dictionaryWithCoder:(NSCoder *)coder; 00062 00068 + (SCDictionary *)dictionaryWithContentsOfSerializedFile:(NSString *)path; 00069 00077 + (SCDictionary *)dictionaryWithStream:(SCStream *)stream; 00078 00085 + (SCDictionary *)dictionaryWithFileStream:(NSString *)path; 00086 00091 + (SCDictionary *)dictionary; 00092 00098 + (SCDictionary *)dictionaryWithDictionaryName:(NSString *)name; 00099 00105 + (SCDictionary *)dictionaryWithDelegate:(id<SCCollectionDelegate>)delegate; 00106 00114 + (SCDictionary *)dictionaryWithDelegate:(id<SCCollectionDelegate>)delegate 00115 collection:(id)collection; 00116 00123 + (SCDictionary *)dictionaryWithCollection:(id)collection; 00124 00132 + (SCDictionary *)dictionaryWithDelegate:(id<SCCollectionDelegate>)delegate object:(id)object; 00133 00140 + (SCDictionary *)dictionaryWithObject:(id)object; 00141 00151 + (SCDictionary *)dictionaryWithDelegate:(id<SCCollectionDelegate>)delegate objects:(id)object, ...; 00152 00160 + (SCDictionary *)dictionaryWithObjects:(id)object, ...; 00161 00168 + (SCDictionary *)dictionaryWithDictionary:(SCDictionary *)dictionary; 00169 00170 #pragma mark - 00171 #pragma mark Initializing Dictionary 00172 00177 - (id)init; 00178 00184 - (id)initWithDictionaryName:(NSString *)name; 00185 00191 - (id)initWithDelegate:(id<SCCollectionDelegate>)delegate; 00192 00200 - (id)initWithDelegate:(id<SCCollectionDelegate>)delegate collection:(id)collection; 00201 00208 - (id)initWithCollection:(id)collection; 00209 00217 - (id)initWithDelegate:(id<SCCollectionDelegate>)delegate object:(id)object; 00218 00225 - (id)initWithObject:(id)object; 00226 00236 - (id)initWithDelegate:(id<SCCollectionDelegate>)delegate objects:(id)object, ...; 00237 00245 - (id)initWithObjects:(id)object, ...; 00246 00253 - (id)initWithDictionary:(SCDictionary *)dictionary; 00254 00255 #pragma mark - 00256 #pragma mark Querying and Setting Dictionary Properties 00257 00262 - (NSString *)dictionaryName; 00263 00268 - (void)setDictionaryName:(NSString *)name; 00269 00270 #pragma mark - 00271 #pragma mark Accessing Keys and Values 00272 00277 - (SCArray *)allKeys; 00278 00283 - (SCArray *)allValues; 00284 00292 - (SCArray *)allKeysForObject:(id)object; 00293 00301 - (SCArray *)allKeysForByte:(SCByte)byte; 00302 00310 - (SCArray *)allKeysForUByte:(SCUByte)byte; 00311 00319 - (SCArray *)allKeysForShort:(SCShort)shortint; 00320 00328 - (SCArray *)allKeysForUShort:(SCUShort)shortint; 00329 00337 - (SCArray *)allKeysForInteger:(SCInteger)integer; 00338 00346 - (SCArray *)allKeysForUInteger:(SCUInteger)integer; 00347 00355 - (SCArray *)allKeysForLong:(SCLong)longint; 00356 00364 - (SCArray *)allKeysForULong:(SCULong)longint; 00365 00373 - (SCArray *)allKeysForChar:(char)chr; 00374 00382 - (SCArray *)allKeysForUnichar:(unichar)chr; 00383 00391 - (SCArray *)allKeysForCharString:(const char *)string; 00392 00400 - (SCArray *)allKeysForBool:(BOOL)boolean; 00401 00409 - (SCArray *)allKeysForFloat:(SCFloat)flt; 00410 00418 - (SCArray *)allKeysForDouble:(SCDouble)dbl; 00419 00425 - (id)objectForKey:(NSString *)key; 00426 00433 - (NSString *)stringForKey:(NSString *)key; 00434 00441 - (NSNumber *)numberForKey:(NSString *)key; 00442 00449 - (SCByte)byteForKey:(NSString *)key; 00450 00457 - (SCUByte)uByteForKey:(NSString *)key; 00458 00465 - (SCShort)shortForKey:(NSString *)key; 00466 00473 - (SCUShort)uShortForKey:(NSString *)key; 00474 00481 - (SCInteger)integerForKey:(NSString *)key; 00482 00489 - (SCUInteger)uIntegerForKey:(NSString *)key; 00490 00497 - (SCLong)longForKey:(NSString *)key; 00498 00505 - (SCULong)uLongForKey:(NSString *)key; 00506 00513 - (char)charForKey:(NSString *)key; 00514 00521 - (unichar)unicharForKey:(NSString *)key; 00522 00529 - (const char *)charStringForKey:(NSString *)key; 00530 00537 - (BOOL)boolForKey:(NSString *)key; 00538 00545 - (SCFloat)floatForKey:(NSString *)key; 00546 00553 - (SCDouble)doubleForKey:(NSString *)key; 00554 00560 - (id)valueForKey:(NSString *)key; 00561 00569 - (NSString *)stringValueForKey:(NSString *)key; 00570 00578 - (NSNumber *)numberValueForKey:(NSString *)key; 00579 00586 - (SCByte)byteValueForKey:(NSString *)key; 00587 00594 - (SCUByte)uByteValueForKey:(NSString *)key; 00595 00602 - (SCShort)shortValueForKey:(NSString *)key; 00603 00610 - (SCUShort)uShortValueForKey:(NSString *)key; 00611 00618 - (SCInteger)integerValueForKey:(NSString *)key; 00619 00626 - (SCUInteger)uIntegerValueForKey:(NSString *)key; 00627 00634 - (SCLong)longValueForKey:(NSString *)key; 00635 00642 - (SCULong)uLongValueForKey:(NSString *)key; 00643 00650 - (char)charValueForKey:(NSString *)key; 00651 00658 - (unichar)unicharValueForKey:(NSString *)key; 00659 00666 - (const char *)charStringValueForKey:(NSString *)key; 00667 00674 - (BOOL)boolValueForKey:(NSString *)key; 00675 00682 - (SCFloat)floatValueForKey:(NSString *)key; 00683 00690 - (SCDouble)doubleValueForKey:(NSString *)key; 00691 00692 #pragma mark - 00693 #pragma mark Find Objects in Dictionary 00694 00701 - (BOOL)containsObjectForKey:(NSString *)key; 00702 00709 - (BOOL)containsStringForKey:(NSString *)key; 00710 00717 - (BOOL)containsNumberForKey:(NSString *)key; 00718 00725 - (BOOL)containsAnyObjectForKeys:(SCArray *)array; 00726 00733 - (BOOL)containsAllObjectsForKeys:(SCArray *)array; 00734 00735 #pragma mark - 00736 #pragma mark Enumerating Dictionaries 00737 00742 - (NSEnumerator *)keyEnumerator; 00743 00744 #pragma mark - 00745 #pragma mark Adding Objects 00746 00753 - (void)setObject:(id)object forKey:(NSString *)key; 00754 00761 - (void)setByte:(SCByte)byte forKey:(NSString *)key; 00762 00769 - (void)setUByte:(SCUByte)byte forKey:(NSString *)key; 00770 00777 - (void)setShort:(SCShort)shortint forKey:(NSString *)key; 00778 00785 - (void)setUShort:(SCUShort)shortint forKey:(NSString *)key; 00786 00793 - (void)setInteger:(SCInteger)integer forKey:(NSString *)key; 00794 00801 - (void)setUInteger:(SCUInteger)integer forKey:(NSString *)key; 00802 00809 - (void)setLong:(SCLong)longint forKey:(NSString *)key; 00810 00817 - (void)setULong:(SCULong)longint forKey:(NSString *)key; 00818 00825 - (void)setChar:(char)chr forKey:(NSString *)key; 00826 00833 - (void)setUnichar:(unichar)chr forKey:(NSString *)key; 00834 00841 - (void)setCharString:(const char *)string forKey:(NSString *)key; 00842 00849 - (void)setBool:(BOOL)boolean forKey:(NSString *)key; 00850 00857 - (void)setFloat:(SCFloat)flt forKey:(NSString *)key; 00858 00865 - (void)setDouble:(SCDouble)dbl forKey:(NSString *)key; 00866 00873 - (void)setValue:(id)value forKey:(NSString *)key; 00874 00881 - (void)setByteValue:(SCByte)value forKey:(NSString *)key; 00882 00889 - (void)setUByteValue:(SCUByte)value forKey:(NSString *)key; 00890 00897 - (void)setShortValue:(SCShort)value forKey:(NSString *)key; 00898 00905 - (void)setUShortValue:(SCUShort)value forKey:(NSString *)key; 00906 00913 - (void)setIntegerValue:(SCInteger)value forKey:(NSString *)key; 00914 00921 - (void)setUIntegerValue:(SCUInteger)value forKey:(NSString *)key; 00922 00929 - (void)setLongValue:(SCLong)value forKey:(NSString *)key; 00930 00937 - (void)setULongValue:(SCULong)value forKey:(NSString *)key; 00938 00945 - (void)setCharValue:(char)value forKey:(NSString *)key; 00946 00953 - (void)setUnicharValue:(unichar)value forKey:(NSString *)key; 00954 00961 - (void)setCharStringValue:(const char *)value forKey:(NSString *)key; 00962 00969 - (void)setBoolValue:(BOOL)value forKey:(NSString *)key; 00970 00977 - (void)setFloatValue:(SCFloat)value forKey:(NSString *)key; 00978 00985 - (void)setDoubleValue:(SCDouble)value forKey:(NSString *)key; 00986 00987 #pragma mark - 00988 #pragma mark Removing Objects 00989 00995 - (void)removeObjectForKey:(NSString *)key; 00996 01002 - (void)removeObjectsForKeys:(SCArray *)keys; 01003 01004 @end
1.7.3