66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
|
*
* @brief A class similar to OFDictionary, but providing more options how keys
* and objects should be retained, released, compared and hashed.
*/
@interface OFMapTable: OFObject <OFCopying, OFFastEnumeration>
{
of_map_table_functions_t _keyFunctions, _objectFunctions;
struct of_map_table_bucket **_buckets;
uint32_t _count, _capacity;
uint8_t _rotate;
unsigned long _mutations;
}
/*!
* The key functions used by the map table.
|
|
|
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
|
*
* @brief A class similar to OFDictionary, but providing more options how keys
* and objects should be retained, released, compared and hashed.
*/
@interface OFMapTable: OFObject <OFCopying, OFFastEnumeration>
{
of_map_table_functions_t _keyFunctions, _objectFunctions;
struct of_map_table_bucket *_Nonnull *_Nullable _buckets;
uint32_t _count, _capacity;
uint8_t _rotate;
unsigned long _mutations;
}
/*!
* The key functions used by the map table.
|
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
|
*
* @brief A class which provides methods to enumerate through an OFMapTable's
* keys or objects.
*/
@interface OFMapTableEnumerator: OFObject
{
OFMapTable *_mapTable;
struct of_map_table_bucket **_buckets;
uint32_t _capacity;
unsigned long _mutations;
unsigned long *_mutationsPtr;
uint32_t _position;
}
- init OF_UNAVAILABLE;
/*!
* @brief Returns the next object.
|
|
|
|
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
|
*
* @brief A class which provides methods to enumerate through an OFMapTable's
* keys or objects.
*/
@interface OFMapTableEnumerator: OFObject
{
OFMapTable *_mapTable;
struct of_map_table_bucket *_Nonnull *_Nullable _buckets;
uint32_t _capacity;
unsigned long _mutations;
unsigned long *_Nullable _mutationsPtr;
uint32_t _position;
}
- init OF_UNAVAILABLE;
/*!
* @brief Returns the next object.
|