|
Samond Classes Library 1.1.6-RELEASE build 132
|
00001 // 00002 // SCNSDictionary.h 00003 // scl 00004 // 00005 // Created by Viacheslav Smolensky on 13.05.12. 00006 // Copyright (c) 2007 - 2014 by Samond Development Corporation. All rights reserved. 00007 // 00008 00016 #import <Foundation/Foundation.h> 00017 #import <scl/SCCollectionProtocol.h> 00018 #import <scl/SCDictionaryObjectProtocol.h> 00019 00020 #define NSDictionaryClass @"NSDictionary" ///< NSDictionary class name 00021 00031 @interface NSDictionary(SCNSDictionary) <SCCollectionProtocol, SCDictionaryObjectProtocol, 00032 SCStreamProtocol> 00033 #pragma mark - 00034 #pragma mark Category properties 00035 #if (__MAC_OS_X_VERSION_MIN_REQUIRED > 1040) || IOS_TARGET 00036 // Instance class name property 00037 @property (retain, readonly, getter=className) NSString *className; 00038 #endif 00039 00040 #pragma mark - 00041 #pragma mark Creating and Initializing Class Instance 00042 00048 + (NSDictionary *)dictionaryWithContentsOfSerializedFile:(NSString *)path; 00049 00055 + (NSDictionary *)dictionaryWithDataDictionary:(NSDictionary *)dictionary; 00056 00062 + (NSDictionary *)dictionaryWithDataDictionaryFromFile:(NSString *)path; 00063 00069 + (NSDictionary *)dictionaryWithCoder:(NSCoder *)coder; 00070 00078 + (NSDictionary *)dictionaryWithStream:(SCStream *)stream; 00079 00086 + (NSDictionary *)dictionaryWithFileStream:(NSString *)path; 00087 00093 - (id)initWithContentsOfSerializedFile:(NSString *)path; 00094 00100 - (id)initWithDataDictionary:(NSDictionary *)dictionary; 00101 00107 - (id)initWithDataDictionaryFromFile:(NSString *)path; 00108 00116 - (id)initWithStream:(SCStream *)stream; 00117 00124 - (id)initWithFileStream:(NSString *)path; 00125 00126 #pragma mark - 00127 #pragma mark Supporting Data Dictionaries 00128 00133 - (void)writeToDataDictionary:(NSMutableDictionary *)dictionary; 00134 00141 - (void)writeToDataDictionaryFile:(NSString *)path atomically:(BOOL)atomically; 00142 00147 - (void)writeToDataDictionaryFile:(NSString *)path; 00148 00153 - (NSDictionary *)dataDictionary; 00154 00155 #pragma mark - 00156 #pragma mark Supporting Coders and Serialized Files 00157 00163 - (BOOL)writeContentsToSerializedFile:(NSString *)path; 00164 00165 #pragma mark - 00166 #pragma mark Supporting Collections 00167 00172 - (id<SCCollectionProtocol>)copyObject; 00173 00184 - (SCComparisonResult)compareWithObject:(id<SCCollectionProtocol>)object; 00185 00186 #pragma mark - 00187 #pragma mark Supporting Streams 00188 00195 - (void)writeToStream:(SCStream *)stream; 00196 00202 - (void)writeToFileStream:(NSString *)path; 00203 00209 - (void)appendToFileStream:(NSString *)path; 00210 00211 #pragma mark - 00212 #pragma mark Other Methods 00213 00218 - (NSString *)className; 00219 00220 #pragma mark - 00221 #pragma mark Detecting Collection Type 00222 00227 - (BOOL)isCollection; 00228 00233 - (BOOL)isLibraryCollection; 00234 00239 - (BOOL)isFoundationCollection; 00240 00245 - (BOOL)isArray; 00246 00251 - (BOOL)isLibraryArray; 00252 00257 - (BOOL)isFoundationArray; 00258 00263 - (BOOL)isSet; 00264 00269 - (BOOL)isLibrarySet; 00270 00275 - (BOOL)isFoundationSet; 00276 00281 - (BOOL)isOrderedSet; 00282 00287 - (BOOL)isLibraryOrderedSet; 00288 00293 - (BOOL)isFoundationOrderedSet; 00294 00299 - (BOOL)isDictionary; 00300 00305 - (BOOL)isLibraryDictionary; 00306 00311 - (BOOL)isFoundationDictionary; 00312 00317 - (BOOL)isStack; 00318 00323 - (BOOL)isQueue; 00324 00329 - (BOOL)isList; 00330 00335 - (BOOL)isSortable; 00336 00337 @end
1.7.3