41typedef struct ArrayInterface ArrayInterface;
86struct ArrayInterface {
91 ObjectInterface objectInterface;
121 Array *(*arrayWithVaList)(va_list args);
131 String *(*componentsJoinedByCharacters)(
const Array *self,
const char *chars);
227 Array *(*initWithVaList)(
Array *self, va_list args);
static ident findObject(const Array *self, Predicate predicate, ident data)
static ident reduce(const Array *self, Reducer reducer, ident accumulator, ident data)
static ident objectAtIndex(const Array *self, size_t index)
static _Bool containsObject(const Array *self, const ident obj)
static ident lastObject(const Array *self)
static void enumerateObjects(const Array *self, ArrayEnumerator enumerator, ident data)
static ident firstObject(const Array *self)
static ssize_t indexOfObject(const Array *self, const ident obj)
void(* ArrayEnumerator)(const Array *array, ident obj, ident data)
A function pointer for Array enumeration (iteration).
static MutableArray * array(void)
static MutableData * data(void)
static MutableString * string(void)
Object is the root Class of The Objectively Class hierarchy.
void * ident
The identity type, similar to Objective-C id.
#define OBJECTIVELY_EXPORT
_Bool(* Predicate)(const ident obj, ident data)
The Predicate function type for filtering Objects.
Order(* Comparator)(const ident obj1, const ident obj2)
The Comparator function type for ordering Objects.
ident(* Functor)(const ident obj, ident data)
The Functor function type for transforming Objects.
ident(* Reducer)(const ident obj, ident accumulator, ident data)
The Reducer function type for reducing collections.
Class * _Array(void)
The Array archetype.
ArrayInterface * interface
The interface.
Object object
The superclass.
size_t count
The count of elements.
The runtime representation of a Class.
MutableArray * array(void)
Returns a new MutableArray.
MutableData * data(void)
Returns a new MutableData.
Object is the root Class of The Objectively Class hierarchy.