Samond Classes Library 1.1.6-RELEASE build 132

SCNSArray.h

Go to the documentation of this file.
00001 //
00002 //  SCArrayNSArray.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/SCTypes.h>
00018 #import <scl/SCCollectionProtocol.h>
00019 
00020 #define NSArrayClass @"NSArray" ///< NSArray class name
00021 
00031 @interface NSArray(SCNSArray) <SCDictionaryObjectProtocol, SCStreamProtocol, SCCollectionProtocol>
00032 #pragma mark -
00033 #pragma mark Category properties
00034 #if (__MAC_OS_X_VERSION_MIN_REQUIRED > 1040) || IOS_TARGET
00035 // Instance class name property
00036 @property (retain, readonly, getter=className) NSString *className;
00037 #endif
00038 
00039 #pragma mark -
00040 #pragma mark Creating and Initializing Array
00041 
00047 + (NSArray *)arrayWithContentsOfSerializedFile:(NSString *)path;
00048 
00054 + (NSArray *)arrayWithDataDictionary:(NSDictionary *)dictionary;
00055 
00061 + (NSArray *)arrayWithDataDictionaryFromFile:(NSString *)path;
00062 
00068 + (NSArray *)arrayWithCoder:(NSCoder *)coder;
00069 
00077 + (NSArray *)arrayWithStream:(SCStream *)stream;
00078 
00085 + (NSArray *)arrayWithFileStream:(NSString *)path;
00086 
00095 + (NSArray *)arraySortedAscendingWithArray:(NSArray *)array
00096                                                            usingMethod:(id<SCSortingProtocol>)method;
00097 
00106 + (NSArray *)arraySortedDescendingWithArray:(NSArray *)array
00107                                                                 usingMethod:(id<SCSortingProtocol>)method;
00108 
00117 + (NSArray *)arraySortedWithArray:(NSArray *)array usingMethod:(id<SCSortingProtocol>)method;
00118 
00125 + (NSArray *)arraySortedAscendingWithArray:(NSArray *)array;
00126 
00133 + (NSArray *)arraySortedDescendingWithArray:(NSArray *)array;
00134 
00141 + (NSArray *)arraySortedWithArray:(NSArray *)array;
00142 
00148 - (id)initWithContentsOfSerializedFile:(NSString *)path;
00149 
00155 - (id)initWithDataDictionary:(NSDictionary *)dictionary;
00156 
00162 - (id)initWithDataDictionaryFromFile:(NSString *)path;
00163 
00171 - (id)initWithStream:(SCStream *)stream;
00172 
00179 - (id)initWithFileStream:(NSString *)path;
00180 
00189 - (id)initSortedAscendingWithArray:(NSArray *)array usingMethod:(id<SCSortingProtocol>)method;
00190 
00199 - (id)initSortedDescendingWithArray:(NSArray *)array usingMethod:(id<SCSortingProtocol>)method;
00200 
00209 - (id)initSortedWithArray:(NSArray *)array usingMethod:(id<SCSortingProtocol>)method;
00210 
00217 - (id)initSortedAscendingWithArray:(NSArray *)array;
00218 
00225 - (id)initSortedDescendingWithArray:(NSArray *)array;
00226 
00233 - (id)initSortedWithArray:(NSArray *)array;
00234 
00235 #pragma mark -
00236 #pragma mark Supporting Data Dictionaries
00237 
00242 - (void)writeToDataDictionary:(NSMutableDictionary *)dictionary;
00243 
00250 - (void)writeToDataDictionaryFile:(NSString *)path atomically:(BOOL)atomically;
00251 
00256 - (void)writeToDataDictionaryFile:(NSString *)path;
00257 
00262 - (NSDictionary *)dataDictionary;
00263 
00264 #pragma mark -
00265 #pragma mark Supporting Coders and Serialized Files
00266 
00272 - (BOOL)writeContentsToSerializedFile:(NSString *)path;
00273 
00274 #pragma mark -
00275 #pragma mark Supporting Collections
00276 
00281 - (id<SCCollectionProtocol>)copyObject;
00282 
00293 - (SCComparisonResult)compareWithObject:(id<SCCollectionProtocol>)object;
00294 
00295 #pragma mark -
00296 #pragma mark Supporting Streams
00297 
00304 - (void)writeToStream:(SCStream *)stream;
00305 
00311 - (void)writeToFileStream:(NSString *)path;
00312 
00318 - (void)appendToFileStream:(NSString *)path;
00319 
00320 #pragma mark -
00321 #pragma mark Other Methods
00322 
00327 - (NSString *)className;
00328 
00329 #pragma mark -
00330 #pragma mark Detecting Collection Type
00331 
00336 - (BOOL)isCollection;
00337 
00342 - (BOOL)isLibraryCollection;
00343 
00348 - (BOOL)isFoundationCollection;
00349 
00354 - (BOOL)isArray;
00355 
00360 - (BOOL)isLibraryArray;
00361 
00366 - (BOOL)isFoundationArray;
00367 
00372 - (BOOL)isSet;
00373 
00378 - (BOOL)isLibrarySet;
00379 
00384 - (BOOL)isFoundationSet;
00385 
00390 - (BOOL)isOrderedSet;
00391 
00396 - (BOOL)isLibraryOrderedSet;
00397 
00402 - (BOOL)isFoundationOrderedSet;
00403 
00408 - (BOOL)isDictionary;
00409 
00414 - (BOOL)isLibraryDictionary;
00415 
00420 - (BOOL)isFoundationDictionary;
00421 
00426 - (BOOL)isStack;
00427 
00432 - (BOOL)isQueue;
00433 
00438 - (BOOL)isList;
00439 
00444 - (BOOL)isSortable;
00445 
00446 #pragma mark -
00447 #pragma mark Sorting Array
00448 
00456 - (NSArray *)sortedArrayAscendingWithMethod:(id<SCSortingProtocol>)method;
00457 
00465 - (NSArray *)sortedArrayDescendingWithMethod:(id<SCSortingProtocol>)method;
00466 
00474 - (NSArray *)sortedArrayWithMethod:(id<SCSortingProtocol>)method;
00475 
00481 - (NSArray *)sortedArrayAscending;
00482 
00488 - (NSArray *)sortedArrayDescending;
00489 
00495 - (NSArray *)sortedArray;
00496 
00497 @end
 All Classes Files Functions Typedefs Enumerations Enumerator Defines