Samond Classes Library 1.1.6-RELEASE build 132

SCNSMutableArray.h

Go to the documentation of this file.
00001 //
00002 //  SCMutableArrayNSMutableArray.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 #import <scl/SCSortingProtocol.h>
00020 
00021 #define NSMutableArrayClass @"NSMutableArray" ///< NSMutableArray class name
00022 
00032 @interface NSMutableArray(SCNSMutableArray) <SCStreamProtocol, SCCollectionProtocol,
00033                                              SCDictionaryObjectProtocol>
00034 #pragma mark -
00035 #pragma mark Category properties
00036 #if (__MAC_OS_X_VERSION_MIN_REQUIRED > 1040) || IOS_TARGET
00037 // Instance class name property
00038 @property (retain, readonly, getter=className) NSString *className;
00039 #endif
00040 
00041 #pragma mark -
00042 #pragma mark Creating and Initializing Class Instance
00043 
00049 + (NSMutableArray *)arrayWithContentsOfSerializedFile:(NSString *)path;
00050 
00056 + (NSMutableArray *)arrayWithDataDictionary:(NSDictionary *)dictionary;
00057 
00063 + (NSMutableArray *)arrayWithDataDictionaryFromFile:(NSString *)path;
00064 
00070 + (NSMutableArray *)arrayWithCoder:(NSCoder *)coder;
00071 
00079 + (NSMutableArray *)arrayWithStream:(SCStream *)stream;
00080 
00087 + (NSMutableArray *)arrayWithFileStream:(NSString *)path;
00088 
00097 + (NSMutableArray *)arraySortedAscendingWithArray:(NSArray *)array
00098                                                                           usingMethod:(id<SCSortingProtocol>)method;
00099 
00108 + (NSMutableArray *)arraySortedDescendingWithArray:(NSArray *)array
00109                                                                            usingMethod:(id<SCSortingProtocol>)method;
00110 
00119 + (NSMutableArray *)arraySortedWithArray:(NSArray *)array usingMethod:(id<SCSortingProtocol>)method;
00120 
00127 + (NSMutableArray *)arraySortedAscendingWithArray:(NSArray *)array;
00128 
00135 + (NSMutableArray *)arraySortedDescendingWithArray:(NSArray *)array;
00136 
00143 + (NSMutableArray *)arraySortedWithArray:(NSArray *)array;
00144 
00150 - (id)initWithContentsOfSerializedFile:(NSString *)path;
00151 
00157 - (id)initWithDataDictionary:(NSDictionary *)dictionary;
00158 
00164 - (id)initWithDataDictionaryFromFile:(NSString *)path;
00165 
00173 - (id)initWithStream:(SCStream *)stream;
00174 
00181 - (id)initWithFileStream:(NSString *)path;
00182 
00183 #pragma mark -
00184 #pragma mark Supporting Data Dictionaries
00185 
00190 - (void)writeToDataDictionary:(NSMutableDictionary *)dictionary;
00191 
00198 - (void)writeToDataDictionaryFile:(NSString *)path atomically:(BOOL)atomically;
00199 
00204 - (void)writeToDataDictionaryFile:(NSString *)path;
00205 
00210 - (NSDictionary *)dataDictionary;
00211 
00212 #pragma mark -
00213 #pragma mark Supporting Coders and Serialized Files
00214 
00220 - (BOOL)writeContentsToSerializedFile:(NSString *)path;
00221 
00222 #pragma mark -
00223 #pragma mark Supporting Collections
00224 
00229 - (id<SCCollectionProtocol>)copyObject;
00230 
00241 - (SCComparisonResult)compareWithObject:(id<SCCollectionProtocol>)object;
00242 
00243 #pragma mark -
00244 #pragma mark Supporting Streams
00245 
00252 - (void)writeToStream:(SCStream *)stream;
00253 
00259 - (void)writeToFileStream:(NSString *)path;
00260 
00266 - (void)appendToFileStream:(NSString *)path;
00267 
00268 #pragma mark -
00269 #pragma mark Other Methods
00270 
00275 - (NSString *)className;
00276 
00277 #pragma mark -
00278 #pragma mark Detecting Collection Type
00279 
00284 - (BOOL)isCollection;
00285 
00290 - (BOOL)isLibraryCollection;
00291 
00296 - (BOOL)isFoundationCollection;
00297 
00302 - (BOOL)isArray;
00303 
00308 - (BOOL)isLibraryArray;
00309 
00314 - (BOOL)isFoundationArray;
00315 
00320 - (BOOL)isSet;
00321 
00326 - (BOOL)isLibrarySet;
00327 
00332 - (BOOL)isFoundationSet;
00333 
00338 - (BOOL)isOrderedSet;
00339 
00344 - (BOOL)isLibraryOrderedSet;
00345 
00350 - (BOOL)isFoundationOrderedSet;
00351 
00356 - (BOOL)isDictionary;
00357 
00362 - (BOOL)isLibraryDictionary;
00363 
00368 - (BOOL)isFoundationDictionary;
00369 
00374 - (BOOL)isStack;
00375 
00380 - (BOOL)isQueue;
00381 
00386 - (BOOL)isList;
00387 
00392 - (BOOL)isSortable;
00393 
00394 #pragma mark -
00395 #pragma mark Sorting Array
00396 
00402 - (void)sortingArrayAscendingWithMethod:(id<SCSortingProtocol>)method;
00403 
00409 - (void)sortingArrayDescendingWithMethod:(id<SCSortingProtocol>)method;
00410 
00416 - (void)sortingArrayWithMethod:(id<SCSortingProtocol>)method;
00417 
00422 - (void)sortingArrayAscending;
00423 
00428 - (void)sortingArrayDescending;
00429 
00434 - (void)sortingArray;
00435 
00436 @end
 All Classes Files Functions Typedefs Enumerations Enumerator Defines