|
Samond Classes Library 1.1.6-RELEASE build 132
|
00001 // 00002 // SCNSSet.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 00019 #define NSSetClass @"NSSet" ///< NSSet class name 00020 00030 @interface NSSet(SCNSSet) <SCCollectionProtocol, SCDictionaryObjectProtocol, SCStreamProtocol> 00031 #pragma mark - 00032 #pragma mark Category properties 00033 #if (__MAC_OS_X_VERSION_MIN_REQUIRED > 1040) || IOS_TARGET 00034 // Instance class name property 00035 @property (retain, readonly, getter=className) NSString *className; 00036 #endif 00037 00038 #pragma mark - 00039 #pragma mark Creating and Initializing Class Instance 00040 00046 + (NSSet *)setWithContentsOfSerializedFile:(NSString *)path; 00047 00053 + (NSSet *)setWithDataDictionary:(NSDictionary *)dictionary; 00054 00060 + (NSSet *)setWithDataDictionaryFromFile:(NSString *)path; 00061 00067 + (NSSet *)setWithCoder:(NSCoder *)coder; 00068 00076 + (NSSet *)setWithStream:(SCStream *)stream; 00077 00084 + (NSSet *)setWithFileStream:(NSString *)path; 00085 00091 - (id)initWithContentsOfSerializedFile:(NSString *)path; 00092 00098 - (id)initWithDataDictionary:(NSDictionary *)dictionary; 00099 00105 - (id)initWithDataDictionaryFromFile:(NSString *)path; 00106 00114 - (id)initWithStream:(SCStream *)stream; 00115 00122 - (id)initWithFileStream:(NSString *)path; 00123 00124 #pragma mark - 00125 #pragma mark Supporting Data Dictionaries 00126 00131 - (void)writeToDataDictionary:(NSMutableDictionary *)dictionary; 00132 00139 - (void)writeToDataDictionaryFile:(NSString *)path atomically:(BOOL)atomically; 00140 00145 - (void)writeToDataDictionaryFile:(NSString *)path; 00146 00151 - (NSDictionary *)dataDictionary; 00152 00153 #pragma mark - 00154 #pragma mark Supporting Coders and Serialized Files 00155 00161 - (BOOL)writeContentsToSerializedFile:(NSString *)path; 00162 00163 #pragma mark - 00164 #pragma mark Supporting Collections 00165 00170 - (id<SCCollectionProtocol>)copyObject; 00171 00182 - (SCComparisonResult)compareWithObject:(id<SCCollectionProtocol>)object; 00183 00184 #pragma mark - 00185 #pragma mark Supporting Streams 00186 00193 - (void)writeToStream:(SCStream *)stream; 00194 00200 - (void)writeToFileStream:(NSString *)path; 00201 00207 - (void)appendToFileStream:(NSString *)path; 00208 00209 #pragma mark - 00210 #pragma mark Other Methods 00211 00216 - (NSString *)className; 00217 00218 #pragma mark - 00219 #pragma mark Detecting Collection Type 00220 00225 - (BOOL)isCollection; 00226 00231 - (BOOL)isLibraryCollection; 00232 00237 - (BOOL)isFoundationCollection; 00238 00243 - (BOOL)isArray; 00244 00249 - (BOOL)isLibraryArray; 00250 00255 - (BOOL)isFoundationArray; 00256 00261 - (BOOL)isSet; 00262 00267 - (BOOL)isLibrarySet; 00268 00273 - (BOOL)isFoundationSet; 00274 00279 - (BOOL)isOrderedSet; 00280 00285 - (BOOL)isLibraryOrderedSet; 00286 00291 - (BOOL)isFoundationOrderedSet; 00292 00297 - (BOOL)isDictionary; 00298 00303 - (BOOL)isLibraryDictionary; 00304 00309 - (BOOL)isFoundationDictionary; 00310 00315 - (BOOL)isStack; 00316 00321 - (BOOL)isQueue; 00322 00327 - (BOOL)isList; 00328 00333 - (BOOL)isSortable; 00334 00335 @end
1.7.3