21 #import <scl/SCException.h>
22 #import <scl/SCCollection.h>
25 #pragma mark Константы класса
30 #define SCCollectionExceptionClass @"SCCollectionException"
31 #define SCCollectionErrorName @"SCCollection"
36 #pragma mark Константы ошибок
41 #define SCCollectionEIDUnspecified @"SCL-20040"
42 #define SCCollectionEIDSource @"SCL-20041"
44 #define SCCollectionEIDType @"SCL-20042"
46 #define SCCollectionEIDReadOnly @"SCL-20043"
48 #define SCCollectionEIDItem @"SCL-20044"
50 #define SCCollectionEIDObject @"SCL-20045"
52 #define SCCollectionEIDUnsupported @"SCL-20046"
54 #define SCCollectionEIDUnknown @"SCL-20047"
56 #define SCCollectionEIDNotComparable @"SCL-20048"
58 #define SCCollectionEIDNotSortable @"SCL-20049"
60 #define SCCollectionEIDSorter @"SCL-20050"
62 #define SCCollectionEIDUnexpected @"SCL-20051"
64 #define SCCollectionEIDIndex @"SCL-20052"
66 #define SCCollectionEIDRange @"SCL-20053"
68 #define SCCollectionEIDIndexSet @"SCL-20054"
70 #define SCCollectionEIDIndexSetCount @"SCL-20055"
72 #define SCCollectionEIDKey @"SCL-20056"
74 #define SCCollectionEIDKeysCount @"SCL-20057"
76 #define SCCollectionEIDValue @"SCL-20058"
81 #pragma mark Типы поддержки класса
203 NSString *fCollectionName;
205 NSString *fUnsupported;
207 NSString *fUnexpected;
211 NSIndexSet *fIndexSet;
218 #pragma mark Свойства экземпляра класса
228 @property (nonatomic, retain, readonly, getter=
collectionName) NSString *collectionName;
234 @property (nonatomic, retain, readonly, getter=
typeName) NSString *typeName;
240 @property (nonatomic, retain, readonly, getter=
unsupported) NSString *unsupported;
246 @property (nonatomic, retain, readonly, getter=
unknown) NSString *unknown;
252 @property (nonatomic, retain, readonly, getter=
unexpected) NSString *unexpected;
258 @property (nonatomic, retain, readonly, getter=
expected) NSString *expected;
270 @property (nonatomic, assign, readonly, getter=
range) NSRange range;
276 @property (nonatomic, retain, readonly, getter=
indexSet) NSIndexSet *indexSet;
294 @property (nonatomic, retain, readonly, getter=
key) NSString *key;
305 #pragma mark Доступ к свойствам экземпляра класса
306 - (NSString *)collectionName;
307 - (NSString *)typeName;
308 - (NSString *)unsupported;
309 - (NSString *)unknown;
310 - (NSString *)unexpected;
311 - (NSString *)expected;
314 - (NSIndexSet *)indexSet;
321 #pragma mark Создание и инициализация общих видов исключительных ситуаций
323 reason:(NSString *)reason
329 - (id)initWithName:(NSString *)name reason:(NSString *)reason code:(
SCInteger)code eid:(NSString *)eid;
330 - (id)initWithReason:(NSString *)reason code:(
SCInteger)code eid:(NSString *)eid;
331 - (id)initWithName:(NSString *)name;
335 #pragma mark Создание и инициализация исключительной ситуации несуществующей исходной коллекции
337 - (id)initWithSource;
340 #pragma mark Создание и инициализация исключительной ситуации неподдерживаемого типа коллекции
342 - (id)initWithUnsupportedType:(NSString *)type;
345 #pragma mark Создание и инициализация исключительной ситуации нарушения режима только для чтения
348 - (id)initWithReadOnlyType:(NSString *)type name:(NSString *)name;
349 - (id)initWithReadOnlyType:(NSString *)type;
352 #pragma mark Создание и инициализация исключительной ситуации добавления нулевого указателя
355 - (id)initWithItemType:(NSString *)type name:(NSString *)name;
356 - (id)initWithItemType:(NSString *)type;
359 #pragma mark Создание и инициализация исключительной ситуации несуществующего исходного объекта
361 - (id)initWithObject;
364 #pragma mark Создание и инициализация исключительной ситуации неподдерживаемого класса
365 + (
SCCollectionException *)exceptionWithUnsupported:(NSString *)cname type:(NSString *)type name:(NSString *)name;
367 - (id)initWithUnsupported:(NSString *)cname type:(NSString *)type name:(NSString *)name;
368 - (id)initWithUnsupported:(NSString *)cname type:(NSString *)type;
371 #pragma mark Создание и инициализация исключительной ситуации неизвестного класса
372 + (
SCCollectionException *)exceptionWithUnknown:(NSString *)cname type:(NSString *)type name:(NSString *)name;
374 - (id)initWithUnknown:(NSString *)cname type:(NSString *)type name:(NSString *)name;
375 - (id)initWithUnknown:(NSString *)cname type:(NSString *)type;
378 #pragma mark Создание и инициализация исключительной ситуации несравнимых объектов
381 - (id)initWithNotComparableType:(NSString *)type name:(NSString *)name;
382 - (id)initWithNotComparableType:(NSString *)type;
385 #pragma mark Создание и инициализация исключительной ситуации несортируемой коллекции
388 - (id)initWithNotSortableType:(NSString *)type name:(NSString *)name;
389 - (id)initWithNotSortableType:(NSString *)type;
392 #pragma mark Создание и инициализация исключительной ситуации сортировщика данных
395 - (id)initWithSorterType:(NSString *)type name:(NSString *)name;
396 - (id)initWithSorterType:(NSString *)type;
399 #pragma mark Создание и инициализация исключительной ситуации неожиданного класса
401 expected:(NSString *)expected
402 type:(NSString *)type
403 name:(NSString *)name;
405 expected:(NSString *)expected
406 type:(NSString *)type;
407 - (id)initWithUnexpected:(NSString *)unexpected
408 expected:(NSString *)expected
409 type:(NSString *)type
410 name:(NSString *)name;
411 - (id)initWithUnexpected:(NSString *)unexpected expected:(NSString *)expected type:(NSString *)type;
414 #pragma mark Создание и инициализация исключительной ситуации недопустимого индекса
417 - (id)initWithIndex:(
SCIndex)index name:(NSString *)name;
418 - (id)initWithIndex:(
SCIndex)index;
421 #pragma mark Создание и инициализация исключительной ситуации недопустимого диапазона объектов
424 - (id)initWithRange:(NSRange)range name:(NSString *)name;
425 - (id)initWithRange:(NSRange)range;
428 #pragma mark Создание и инициализация исключительной ситуации недопустимого списка индексов
431 - (id)initWithIndexSet:(NSIndexSet *)indexSet name:(NSString *)name;
432 - (id)initWithIndexSet:(NSIndexSet *)indexSet;
435 #pragma mark Создание и инициализация исключительной ситуации несоответствия количества индексов и объектов
437 - (id)initWithIndexesCount:(
SCULong)indexes objectsCount:(
SCULong)objects;
440 #pragma mark Создание и инициализация исключительной ситуации некорректного ключа объекта
443 - (id)initWithKey:(NSString *)key name:(NSString *)name;
444 - (id)initWithKey:(NSString *)key;
447 #pragma mark Создание и инициализация исключительной ситуации несоответствия количества ключей и объектов
449 - (id)initWithKeysCount:(
SCULong)keys objectsCount:(
SCULong)objects;
452 #pragma mark Создание и инициализация исключительной ситуации пустого значения
455 - (id)initValueForKey:(NSString *)key name:(NSString *)name;
456 - (id)initValueForKey:(NSString *)key;
uint64_t SCULong
Definition: SCTypes.h:78
Collection does not supports sorting.
Definition: SCCollectionException.h:114
SCULong SCIndex
Index data type.
Definition: SCTypes.h:240
Unspecified collection error.
Definition: SCCollectionException.h:96
NSString * typeName
Definition: SCCollectionException.h:234
int32_t SCInteger
Definition: SCTypes.h:48
Incorrect index set.
Definition: SCCollectionException.h:124
NSString * expected
Definition: SCCollectionException.h:258
SCULong objectsCount
Definition: SCCollectionException.h:288
Empty value.
Definition: SCCollectionException.h:132
Number of indexes does not match number of objects.
Definition: SCCollectionException.h:126
NSRange range
Definition: SCCollectionException.h:270
Incorrect object key.
Definition: SCCollectionException.h:128
SCIndex index
Definition: SCCollectionException.h:264
Parent class of all library exceptions.
Definition: SCException.h:52
enum _SCCollectionError SCCollectionError
Collection errors data type.
Definition: SCCollectionException.h:146
Incorrect data sorter.
Definition: SCCollectionException.h:116
Collection is read only.
Definition: SCCollectionException.h:102
NSIndexSet * indexSet
Definition: SCCollectionException.h:276
Unknown class.
Definition: SCCollectionException.h:110
NSString * unknown
Definition: SCCollectionException.h:246
Adding a null pointer.
Definition: SCCollectionException.h:104
Unsupported collection type.
Definition: SCCollectionException.h:100
Incorrect object index.
Definition: SCCollectionException.h:120
Incomparable collection object.
Definition: SCCollectionException.h:112
SCULong keysCount
Definition: SCCollectionException.h:300
_SCCollectionError
Definition: SCCollectionException.h:95
Source object does not exists.
Definition: SCCollectionException.h:106
NSString * collectionName
Definition: SCCollectionException.h:228
NSString * unexpected
Definition: SCCollectionException.h:252
Source collection does not exists.
Definition: SCCollectionException.h:98
Unexpected class.
Definition: SCCollectionException.h:118
NSString * key
Definition: SCCollectionException.h:294
Unsupported class.
Definition: SCCollectionException.h:108
Number of keys does not match number of objects.
Definition: SCCollectionException.h:130
Incorrect objects range.
Definition: SCCollectionException.h:122
Exception class SCCollectionException.
Definition: SCCollectionException.h:202
NSString * unsupported
Definition: SCCollectionException.h:240
SCULong indexesCount
Definition: SCCollectionException.h:282