27 #pragma mark Class Constants
37 #define SCCollectionClass @"SCCollection"
43 #define SCNotFound NSNotFound
100 id<SCCollectionDelegate> fDelegate;
103 #pragma mark Свойства экземпляра класса
113 @property (nonatomic, readwrite, retain) NSString *name;
119 @property (nonatomic, readonly, assign)
SCIndex count;
125 @property (nonatomic, readonly, assign) BOOL empty;
131 @property (nonatomic, readwrite, assign) BOOL readOnly;
137 @property (nonatomic, readwrite, retain) id<SCCollectionDelegate> delegate;
143 @property (nonatomic, readonly, copy) NSString *typeName;
162 @property (nonatomic, readonly, assign) NSEnumerator *objectEnumerator;
168 @property (nonatomic, readonly, assign) NSEnumerator *reverseObjectEnumerator;
181 @property (nonatomic, readonly, assign)
SCArray *array;
187 @property (nonatomic, readonly, assign)
SCSet *set;
207 @property (nonatomic, readonly, assign)
SCStack *stack;
213 @property (nonatomic, readonly, assign)
SCQueue *queue;
231 @property (nonatomic, readonly, assign) NSArray *foundationArray;
237 @property (nonatomic, readonly, assign) NSSet *foundationSet;
244 @property (nonatomic, readonly, assign) NSOrderedSet *foundationOrderedSet;
251 @property (nonatomic, readonly, assign) NSDictionary *foundationDictionary;
276 @property (nonatomic, readonly, assign) BOOL isCollection;
282 @property (nonatomic, readonly, assign) BOOL isLibraryCollection;
288 @property (nonatomic, readonly, assign) BOOL isFoundationCollection;
294 @property (nonatomic, readonly, assign) BOOL isArray;
300 @property (nonatomic, readonly, assign) BOOL isLibraryArray;
307 @property (nonatomic, readonly, assign) BOOL isFoundationArray;
313 @property (nonatomic, readonly, assign) BOOL isSet;
319 @property (nonatomic, readonly, assign) BOOL isLibrarySet;
326 @property (nonatomic, readonly, assign) BOOL isFoundationSet;
332 @property (nonatomic, readonly, assign) BOOL isOrderedSet;
338 @property (nonatomic, readonly, assign) BOOL isLibraryOrderedSet;
346 @property (nonatomic, readonly, assign) BOOL isFoundationOrderedSet;
352 @property (nonatomic, readonly, assign) BOOL isDictionary;
358 @property (nonatomic, readonly, assign) BOOL isLibraryDictionary;
366 @property (nonatomic, readonly, assign) BOOL isFoundationDictionary;
372 @property (nonatomic, readonly, assign) BOOL isStack;
378 @property (nonatomic, readonly, assign) BOOL isQueue;
385 @property (nonatomic, readonly, assign) BOOL isList;
392 @property (nonatomic, readonly, assign) BOOL isSortable;
397 #pragma mark Initializing Collections
398 - (instancetype)initWithName:(NSString *)name;
399 - (instancetype)initWithCollection:(
id<
SCCollection>)collection;
402 #pragma mark Copying Collections
405 - (void)setObjects:(
id<
SCCollectioning>)object, ... NS_REQUIRES_NIL_TERMINATION;
408 #pragma mark Comparing Collections
409 - (BOOL)isEqualToCollection:(
id<
SCCollection>)collection;
410 - (BOOL)isEqual:(
id)object;
413 #pragma mark Objects Enumerators
417 - (void)reverseEnumerate;
420 #pragma mark Adding Objects
422 - (void)addObjects:(
id<
SCCollectioning>)object, ... NS_REQUIRES_NIL_TERMINATION;
426 #pragma mark Removing Objects
427 - (void)removeAllObjects;
428 - (void)removeObjectsWithClass:(Class)oclass;
429 - (void)removeObjectsWithClassName:(NSString *)name;
432 - (void)removeObjects:(
id<
SCCollectioning>)object, ... NS_REQUIRES_NIL_TERMINATION;
435 #pragma mark Finding Objects in a Collection
437 - (BOOL)containsObjects:(
id<
SCCollectioning>)object, ... NS_REQUIRES_NIL_TERMINATION;
438 - (BOOL)containsCollection:(
id<
SCCollection>)collection;
439 - (BOOL)containsAnyObject:(
id<
SCCollectioning>)object, ... NS_REQUIRES_NIL_TERMINATION;
440 - (BOOL)containsAnyObjectFromCollection:(
id<
SCCollection>)collection;
443 #pragma mark Detecting Collection Type
444 + (BOOL)isCollectionClass:(NSString *)name;
445 + (BOOL)isLibraryCollectionClass:(NSString *)name;
446 + (BOOL)isFoundationCollectionClass:(NSString *)name;
447 + (BOOL)isArrayClass:(NSString *)name;
448 + (BOOL)isLibraryArrayClass:(NSString *)name;
449 + (BOOL)isFoundationArrayClass:(NSString *)name;
450 + (BOOL)isSetClass:(NSString *)name;
451 + (BOOL)isLibrarySetClass:(NSString *)name;
452 + (BOOL)isFoundationSetClass:(NSString *)name;
453 + (BOOL)isOrderedSetClass:(NSString *)name;
454 + (BOOL)isLibraryOrderedSetClass:(NSString *)name;
455 + (BOOL)isFoundationOrderedSetClass:(NSString *)name;
456 + (BOOL)isDictionaryClass:(NSString *)name;
457 + (BOOL)isLibraryDictionaryClass:(NSString *)name;
458 + (BOOL)isFoundationDictionaryClass:(NSString *)name;
459 + (BOOL)isStackClass:(NSString *)name;
460 + (BOOL)isQueueClass:(NSString *)name;
461 + (BOOL)isListClass:(NSString *)name;
462 + (BOOL)isSortableClass:(NSString *)name;
464 + (BOOL)isCollection:(
id)object;
465 + (BOOL)isLibraryCollection:(
id)object;
466 + (BOOL)isFoundationCollection:(
id)object;
467 + (BOOL)isArray:(
id)object;
468 + (BOOL)isLibraryArray:(
id)object;
469 + (BOOL)isFoundationArray:(
id)object;
470 + (BOOL)isSet:(
id)object;
471 + (BOOL)isLibrarySet:(
id)object;
472 + (BOOL)isFoundationSet:(
id)object;
473 + (BOOL)isOrderedSet:(
id)object;
474 + (BOOL)isLibraryOrderedSet:(
id)object;
475 + (BOOL)isFoundationOrderedSet:(
id)object;
476 + (BOOL)isDictionary:(
id)object;
477 + (BOOL)isLibraryDictionary:(
id)object;
478 + (BOOL)isFoundationDictionary:(
id)object;
479 + (BOOL)isStack:(
id)object;
480 + (BOOL)isQueue:(
id)object;
481 + (BOOL)isList:(
id)object;
482 + (BOOL)isSortable:(
id)object;
Unordered set class.
Definition: SCSet.h:69
Class for support the bidirectional lists of objects.
Definition: SCBidirectionalList.h:80
Unidirectional list class.
Definition: SCUnidirectionalList.h:79
Mutable collections protocol.
Definition: SCCollectionProtocols.h:576
Class SCObject header file.
Ordered set class.
Definition: SCOrderedSet.h:79
Parent class of all library classes.
Definition: SCObject.h:58
Collection types protocols header file.
Collections communications protocol.
Definition: SCCollectioning.h:78
Collections events handling class.
Definition: SCCollectionDelegate.h:524
Abstract collections class.
Definition: SCCollection.h:97
Stack of objects class.
Definition: SCStack.h:74
Queue of objects class.
Definition: SCQueue.h:80
Dictionary class.
Definition: SCDictionary.h:77
Array class.
Definition: SCArray.h:81
NSUInteger SCIndex
Definition: SCCollectionProtocols.h:50
SCCollectionType
Definition: SCCollectionProtocols.h:56