17#import "OFEnumerator.h"
19OF_ASSUME_NONNULL_BEGIN
30 void *_Nullable (*_Nullable retain)(
void *_Nullable object);
32 void (*_Nullable release)(
void *_Nullable object);
34 unsigned long (*_Nullable hash)(
void *_Nullable object);
36 bool (*_Nullable equal)(
void *_Nullable object1,
37 void *_Nullable object2);
50 void *_Nullable object,
bool *stop);
60 void *_Nullable object);
71OF_SUBCLASSING_RESTRICTED
75 struct OFMapTableBucket *_Nonnull *_Nullable _buckets;
76 uint32_t _count, _capacity;
77 unsigned char _rotation;
78 unsigned long _mutations;
94@property (readonly, nonatomic)
size_t count;
118 capacity: (
size_t)capacity;
120- (instancetype)init OF_UNAVAILABLE;
145 capacity: (
size_t)capacity
146 OF_DESIGNATED_INITIALIZER;
154- (nullable
void *)objectForKey: (
void *)key;
162- (void)setObject: (nullable
void *)object forKey: (nullable
void *)key;
169- (void)removeObjectForKey: (nullable
void *)key;
174- (void)removeAllObjects;
183- (bool)containsObject: (nullable
void *)object;
193- (bool)containsObjectIdenticalTo: (nullable
void *)object;
234#ifndef OF_MAP_TABLE_M
235OF_SUBCLASSING_RESTRICTED
240 struct OFMapTableBucket *_Nonnull *_Nullable _buckets;
242 unsigned long _mutations, *_Nullable _mutationsPtr, _position;
245- (instancetype)init OF_UNAVAILABLE;
253- (
void *_Nullable *_Nullable)nextObject;
void *(^ OFMapTableReplaceBlock)(void *key, void *object)
A block for replacing objects in an OFMapTable.
Definition OFMapTable.h:59
void(^ OFMapTableEnumerationBlock)(void *key, void *object, bool *stop)
A block for enumerating an OFMapTable.
Definition OFMapTable.h:49
A class which provides methods to enumerate through an OFMapTable's keys or objects.
Definition OFMapTable.h:239
A class similar to OFDictionary, but providing more options how keys and objects should be retained,...
Definition OFMapTable.h:74
The root class for all other classes inside ObjFW.
Definition OFObject.h:688
A protocol for the creation of copies.
Definition OFObject.h:1346
A protocol for fast enumeration.
Definition OFEnumerator.h:75
A struct describing the functions to be used by the map table.
Definition OFMapTable.h:28