ObjFW  Diff

Differences From Artifact [507b931699]:

To Artifact [06ef929ac6]:


16
17
18
19
20
21
22
23
24


25
26
27
28
29
30
31
32
33
34
35
36


37
38
39
40
41
42
43
16
17
18
19
20
21
22


23
24
25
26
27
28
29
30
31
32
33
34


35
36
37
38
39
40
41
42
43







-
-
+
+










-
-
+
+








@class OFArray;

/// \cond internal
struct of_dictionary_bucket
{
	OFObject <OFCopying> *key;
	OFObject	     *object;
	uint32_t	     hash;
	OFObject *object;
	uint32_t hash;
};
/// \endcond

/**
 * \brief A class for storing objects in a hash table.
 */
@interface OFDictionary: OFObject <OFCopying, OFMutableCopying,
    OFFastEnumeration>
{
	struct of_dictionary_bucket *data;
	size_t			    size;
	size_t			    count;
	uint32_t size;
	size_t count;
}

/**
 * Creates a new OFDictionary.
 *
 * \return A new autoreleased OFDictionary
 */
159
160
161
162
163
164
165
166
167
168
169




170
171
172
173

174
175
176
177
178
179
180
181
182
183
184
185
186
159
160
161
162
163
164
165




166
167
168
169
170
171
172

173
174
175
176
177
178
179
180
181
182
183
184
185
186







-
-
-
-
+
+
+
+



-
+













- (OFEnumerator*)keyEnumerator;
@end

/// \cond internal
@interface OFDictionaryEnumerator: OFEnumerator
{
	struct of_dictionary_bucket *data;
	size_t			    size;
	unsigned long		    mutations;
	unsigned long		    *mutations_ptr;
	size_t			    pos;
	uint32_t size;
	unsigned long mutations;
	unsigned long *mutations_ptr;
	uint32_t pos;
}

-     initWithData: (struct of_dictionary_bucket*)data
	      size: (size_t)size
	      size: (uint32_t)size
  mutationsPointer: (unsigned long*)mutations_ptr;
@end

@interface OFDictionaryObjectEnumerator: OFDictionaryEnumerator
@end

@interface OFDictionaryKeyEnumerator: OFDictionaryEnumerator
@end
/// \endcond

#import "OFMutableDictionary.h"

extern const int of_dictionary_deleted_bucket;