23 #import <Foundation/Foundation.h>
24 #import <scl/SCCoding.h>
25 #import <scl/SCDictionaring.h>
26 #import <scl/SCStreaming.h>
27 #import <scl/SCCollectioning.h>
28 #import <scl/SCCollectionProtocol.h>
31 #pragma mark Константы класса
36 #define NSSetClass @"NSSet"
76 @property (nonatomic, assign, readonly, getter=
empty) BOOL empty;
82 @property (nonatomic, assign, readonly, getter=
readOnly) BOOL readOnly;
97 @property (nonatomic, retain, readonly, getter=
array)
SCArray *array;
103 @property (nonatomic, retain, readonly, getter=
set)
SCSet *set;
145 @property (nonatomic, retain, readonly, getter=
foundationArray) NSArray *foundationArray;
151 @property (nonatomic, retain, readonly, getter=
foundationSet) NSSet *foundationSet;
168 #pragma mark Создание неупорядоченных множеств
169 + (NSSet *)setWithCollection:(
id)collection;
172 #pragma mark Инициализация неупорядоченных множеств
173 - (id)initWithCollection:(
id)collection;
176 #pragma mark Поддержка последовательных файлов
177 + (NSSet *)setWithCoder:(NSCoder *)coder;
178 + (NSSet *)setWithContentsOfSerializedFile:(NSString *)path;
179 - (id)initWithContentsOfSerializedFile:(NSString *)path;
180 - (BOOL)writeContentsToSerializedFile:(NSString *)path;
183 #pragma mark Поддержка словарей
184 + (NSSet *)setWithDataDictionary:(NSDictionary *)dictionary;
185 + (NSSet *)setWithDataDictionaryFromFile:(NSString *)path;
186 - (id)initWithDataDictionary:(NSDictionary *)dictionary;
187 - (id)initWithDataDictionaryFromFile:(NSString *)path;
188 - (void)writeToDataDictionary:(NSMutableDictionary *)dictionary;
189 - (void)writeToDataDictionaryFile:(NSString *)path atomically:(BOOL)atomically;
190 - (void)writeToDataDictionaryFile:(NSString *)path;
194 #pragma mark Поддержка потоков
195 + (NSSet *)setWithStream:(
SCStream *)stream;
196 + (NSSet *)setWithFileStream:(NSString *)path;
197 - (id)initWithStream:(
SCStream *)stream;
198 - (id)initWithFileStream:(NSString *)path;
199 - (void)writeToStream:(
SCStream *)stream;
200 - (void)writeToFileStream:(NSString *)path;
201 - (void)appendToFileStream:(NSString *)path;
204 #pragma mark Поддержка коллекций
209 #pragma mark Реализация протокола SCCollection
233 #pragma mark Поиск элементов неупорядоченного множества
234 - (BOOL)containsObjects:(
id)object, ... NS_REQUIRES_NIL_TERMINATION;
235 - (BOOL)containsCollection:(
id)collection;
236 - (BOOL)containsAnyObject:(
id)object, ... NS_REQUIRES_NIL_TERMINATION;
237 - (BOOL)containsAnyObjectFromCollection:(
id)collection;
240 #pragma mark Преобразование неупорядоченных множеств
Unordered set class.
Definition: SCSet.h:63
SCBidirectionalList * bidirectionalList
Definition: SCNSSet.h:139
BOOL isStack()
Definition: SCNSSet.m:753
BOOL isLibraryArray()
Definition: SCNSSet.m:621
Class for support the bidirectional lists of objects.
Definition: SCBidirectionalList.h:75
BOOL isQueue()
Definition: SCNSSet.m:765
BOOL isCollection()
Definition: SCNSSet.m:573
BOOL isSortable()
Definition: SCNSSet.m:789
Unidirectional list class.
Definition: SCUnidirectionalList.h:74
id< SCCollectioning > copyObject()
Definition: SCNSSet.m:505
BOOL isLibraryDictionary()
Definition: SCNSSet.m:729
BOOL readOnly
Definition: SCNSSet.h:82
NSDictionary * dataDictionary()
Definition: SCNSSet.m:286
BOOL isDictionary()
Definition: SCNSSet.m:717
BOOL isFoundationSet()
Definition: SCNSSet.m:669
NSOrderedSet * foundationOrderedSet
Definition: SCNSSet.h:157
NSArray * foundationArray
Definition: SCNSSet.h:145
Standard protocol NSCoding extention protocol.
Definition: SCCoding.h:40
Ordered set class.
Definition: SCOrderedSet.h:74
SCStack * stack
Definition: SCNSSet.h:121
BOOL isSet()
Definition: SCNSSet.m:645
enum _SCComparisonResult SCComparisonResult
Instances comparing results type.
Definition: SCCollectioning.h:60
Protocol of methods for data exchanging between class instances and classes NSDictionary and NSMutabl...
Definition: SCDictionaring.h:42
BOOL empty
Definition: SCNSSet.h:76
Standard class NSSet functionality extending category.
Definition: SCNSSet.h:52
BOOL isFoundationOrderedSet()
Definition: SCNSSet.m:705
SCSet * set
Definition: SCNSSet.h:103
SCQueue * queue
Definition: SCNSSet.h:127
BOOL isFoundationArray()
Definition: SCNSSet.m:633
BOOL isOrderedSet()
Definition: SCNSSet.m:681
Collections communications protocol.
Definition: SCCollectioning.h:78
Streams communications protocol.
Definition: SCStreaming.h:40
BOOL isArray()
Definition: SCNSSet.m:609
SCArray * array
Definition: SCNSSet.h:97
BOOL isFoundationCollection()
Definition: SCNSSet.m:597
Abstract collections class.
Definition: SCCollection.h:94
Stack of objects class.
Definition: SCStack.h:69
NSSet * foundationSet
Definition: SCNSSet.h:151
BOOL isLibraryOrderedSet()
Definition: SCNSSet.m:693
Queue of objects class.
Definition: SCQueue.h:74
BOOL isLibraryCollection()
Definition: SCNSSet.m:585
SCUnidirectionalList * unidirectionalList
Definition: SCNSSet.h:133
BOOL isFoundationDictionary()
Definition: SCNSSet.m:741
BOOL isLibrarySet()
Definition: SCNSSet.m:657
Dictionary class.
Definition: SCDictionary.h:75
SCOrderedSet * orderedSet
Definition: SCNSSet.h:109
Array class.
Definition: SCArray.h:77
BOOL isList()
Definition: SCNSSet.m:777
SCDictionary * dictionary
Definition: SCNSSet.h:115
Abstract parent class of the stream classes hierarchy.
Definition: SCStream.h:242
NSDictionary * foundationDictionary
Definition: SCNSSet.h:163