ObjFW  Diff

Differences From Artifact [29972e06f6]:

To Artifact [0667a7eb0a]:


17
18
19
20
21
22
23
24

25
26
27
28
29
30
31
32
33
34
35
36
37
17
18
19
20
21
22
23

24
25
26




27
28
29
30
31
32
33







-
+


-
-
-
-







#import "OFDictionary.h"

#ifdef OF_HAVE_BLOCKS
typedef id (^of_dictionary_replace_block_t)(id key, id object, BOOL *stop);
#endif

/**
 * \brief A class for using mutable hash tables.
 * \brief An abstract class for using mutable dictionaries.
 */
@interface OFMutableDictionary: OFDictionary
{
	unsigned long mutations;
}

/**
 * \brief Sets an object for a key.
 *
 * A key can be any object that conforms to the OFCopying protocol.
 *
 * \param key The key to set
 * \param object The object to set the key to
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68



47
48
49
50
51
52
53






54
55
56
57
58
59
60
61







-
-
-
-
-
-





+
+
+
 * \brief Replaces each object with the object returned by the block.
 *
 * \param block The block which returns a new object for each object
 */
- (void)replaceObjectsUsingBlock: (of_dictionary_replace_block_t)block;
#endif

#if defined(OF_SET_M) || defined(OF_MUTABLE_SET_M) || defined(OF_COUNTED_SET_M)
- (void)_setObject: (id)object
	    forKey: (id)key
	   copyKey: (BOOL)copyKey;
#endif

/**
 * \brief Converts the mutable dictionary to an immutable dictionary.
 */
- (void)makeImmutable;
@end

@interface OFMutableDictionary_placeholder: OFDictionary
@end