ObjFW  Diff

Differences From Artifact [824ca8afe1]:

To Artifact [768648064e]:


82
83
84
85
86
87
88
89
90
91
92
93





94
95
96
97
98
99
100
101
102
103
104
105
82
83
84
85
86
87
88





89
90
91
92
93


94


95
96
97
98
99
100
101







-
-
-
-
-
+
+
+
+
+
-
-

-
-







#endif

/*!
 * @class OFArray OFArray.h ObjFW/OFArray.h
 *
 * @brief An abstract class for storing objects in an array.
 */
#ifdef OF_HAVE_GENERICS
@interface OFArray<ObjectType>:
#else
# ifndef DOXYGEN
#  define ObjectType id
@interface OFArray OF_GENERIC(ObjectType): OFObject <OFCopying,
    OFMutableCopying, OFCollection, OFSerialization, OFJSONRepresentation,
    OFMessagePackRepresentation>
#if !defined(OF_HAVE_GENERICS) && !defined(DOXYGEN)
# define ObjectType id
# endif
@interface OFArray:
#endif
    OFObject <OFCopying, OFMutableCopying, OFCollection, OFSerialization,
    OFJSONRepresentation, OFMessagePackRepresentation>
/*!
 * @brief Creates a new OFArray.
 *
 * @return A new autoreleased OFArray
 */
+ (instancetype)array;

478
479
480
481
482
483
484
485
486
487
488

489
490
491
492
493
494
495
474
475
476
477
478
479
480

481
482
483
484
485
486
487
488
489
490
491







-



+







 *
 * @param block A block which folds two objects into one, which is called for
 *		all objects except the first
 * @return The array folded to a single object
 */
- (nullable id)foldUsingBlock: (of_array_fold_block_t)block;
#endif
@end
#if !defined(OF_HAVE_GENERICS) && !defined(DOXYGEN)
# undef ObjectType
#endif
@end

@interface OFArrayEnumerator: OFEnumerator
{
	OFArray	      *_array;
	size_t	      _count;
	unsigned long _mutations;
	unsigned long *_mutationsPtr;