Samond Classes Library 1.2.2-RELEASE build 188
SCList.h
Go to the documentation of this file.
1 //
2 // SCList.h
3 // scl
4 //
5 // Created by Viacheslav Smolensky on 13.04.12.
6 // Copyright (c) 2007 - 2017 by Samond Development Corporation. All rights reserved.
7 //
8 
22 #import <scl/SCCollection.h>
23 
24 #pragma mark -
25 #pragma mark Class Constants
26 
35 #define SCListClass @"SCList"
36 
37 
70 @interface SCList : SCCollection {
71  NSMutableArray *fList; // Internal data storage
72  SCIndex fCurrentObject; // Index of the current object
73 }
74 
88 @property (nonatomic, readonly, assign) id currentObject;
89 
94 @property (nonatomic, readonly, assign) id firstObject;
95 
98 #pragma mark -
99 #pragma mark Initializing Lists
100 - (instancetype)initWithName:(NSString *)name;
101 - (instancetype)initWithObject:(id<SCCollectioning>)object;
102 - (instancetype)initWithObjects:(id<SCCollectioning>)object, ... NS_REQUIRES_NIL_TERMINATION;
103 - (instancetype)initWithCollection:(id<SCCollection>)collection;
104 - (instancetype)initWithList:(SCList *)list;
105 - (instancetype)init;
106 
107 #pragma mark -
108 #pragma mark Copying Lists
109 - (void)setList:(SCList *)list;
110 
111 #pragma mark -
112 #pragma mark Comparing Lists
113 - (BOOL)isEqualToList:(SCList *)list;
114 
115 #pragma mark -
116 #pragma mark List Control
117 - (id)nextObject;
118 
119 #pragma mark -
120 #pragma mark Adding Objects
121 - (void)insertCurrentObject:(id<SCCollectioning>)object;
122 - (void)insertCurrentObjects:(id<SCCollectioning>)object, ... NS_REQUIRES_NIL_TERMINATION;
123 - (void)insertCurrentCollection:(id<SCCollection>)collection;
124 
125 - (void)insertFirstObject:(id<SCCollectioning>)object;
126 - (void)insertFirstObjects:(id<SCCollectioning>)object, ... NS_REQUIRES_NIL_TERMINATION;
127 - (void)insertFirstCollection:(id<SCCollection>)collection;
128 
129 #pragma mark -
130 #pragma mark Removing Objects
131 - (void)removeCurrentObject;
132 - (void)removeFirstObject;
133 
134 #pragma mark -
135 #pragma mark Replacing Objects
136 - (void)replaceCurrentObjectWithObject:(id<SCCollectioning>)object;
137 - (void)replaceFirstObjectWithObject:(id<SCCollectioning>)object;
138 
139 #pragma mark -
140 #pragma mark Copying Objects
141 - (void)duplicateCurrentObject;
142 - (void)duplicateFirstObject;
143 
144 @end
Collections communications protocol.
Definition: SCCollectioning.h:78
Parent class of the object list classes.
Definition: SCList.h:70
Abstract collections class.
Definition: SCCollection.h:101
Class SCCollection header file.
NSUInteger SCIndex
Definition: SCCollectionProtocols.h:50