
Defines | |
| #define | XARRAY_ASSERT_NOT_NULL(xarray) |
| #define | XARRAY_BOUNDS_CHECK(xarray, index) |
| #define | XARRAY_GROW_ARRAY(xarray) |
Functions | |
| XArray * | xarray_New (unsigned int) |
| int | xarray_ObjectAtIndex (XArray *xarray, unsigned int index, void **out_object) |
| int | xarray_AddObject (XArray *xarray, void *object) |
| int | xarray_InsertObject (XArray *xarray, void *object, unsigned int at_index) |
| int | xarray_RemoveLastObject (XArray *xarray) |
| int | xarray_RemoveObject (XArray *xarray, unsigned int at_index) |
| int | xarray_RemoveObjects (XArray *xarray, unsigned int at_index, int count) |
| int | xarray_RemoveObjectsAfter (XArray *xarray, unsigned int index) |
| int | xarray_ReplaceObject (XArray *xarray, unsigned int index, void *new_object) |
| int | xarray_Count (XArray *xarray, unsigned int *out_count) |
| #define XARRAY_ASSERT_NOT_NULL | ( | xarray | ) |
Value:
{ \
if (xarray == NULL) return XARRAY_ENULLPOINTER; \
}
Referenced by xarray_AddObject(), xarray_Count(), xarray_InsertObject(), xarray_ObjectAtIndex(), xarray_RemoveLastObject(), xarray_RemoveObject(), xarray_RemoveObjects(), xarray_RemoveObjectsAfter(), and xarray_ReplaceObject().
| #define XARRAY_BOUNDS_CHECK | ( | xarray, | |||
| index | ) |
Value:
{ \
if (xarray->last_valid_element != -1 && \
(int) index > xarray->last_valid_element) \
return XARRAY_EINDEXTOOLARGE; \
}
Referenced by xarray_InsertObject(), xarray_ObjectAtIndex(), xarray_RemoveObject(), xarray_RemoveObjects(), xarray_RemoveObjectsAfter(), and xarray_ReplaceObject().
| #define XARRAY_GROW_ARRAY | ( | xarray | ) |
Value:
{ \
xarray->array = (void *) realloc (xarray->array, xarray->size * 2); \
if (xarray->array == NULL) return XARRAY_ENOMEM; \
}
Referenced by xarray_AddObject(), and xarray_InsertObject().
| int xarray_AddObject | ( | XArray * | xarray, | |
| void * | object | |||
| ) |
References XArray::array, XArray::last_valid_element, XArray::size, XARRAY_ASSERT_NOT_NULL, XARRAY_GROW_ARRAY, and XARRAY_SUCCESS.
| int xarray_Count | ( | XArray * | xarray, | |
| unsigned int * | out_count | |||
| ) |
References XArray::last_valid_element, XARRAY_ASSERT_NOT_NULL, and XARRAY_SUCCESS.
Referenced by history_CanGoForward(), history_Count(), and history_PruneAndInsert().
| int xarray_InsertObject | ( | XArray * | xarray, | |
| void * | object, | |||
| unsigned int | at_index | |||
| ) |
References XArray::array, XArray::last_valid_element, XArray::size, XARRAY_ASSERT_NOT_NULL, XARRAY_BOUNDS_CHECK, XARRAY_GROW_ARRAY, and XARRAY_SUCCESS.
Referenced by history_PruneAndInsert().
| XArray * xarray_New | ( | unsigned int | initial_size_hint | ) |
References XArray::array, XArray::last_error, XArray::last_valid_element, XArray::size, and XARRAY_DEFAULT_SIZE.
Referenced by history_New().
| int xarray_ObjectAtIndex | ( | XArray * | xarray, | |
| unsigned int | index, | |||
| void ** | out_object | |||
| ) |
References XArray::array, XARRAY_ASSERT_NOT_NULL, XARRAY_BOUNDS_CHECK, and XARRAY_SUCCESS.
Referenced by history_Item().
| int xarray_RemoveLastObject | ( | XArray * | xarray | ) |
References XArray::array, XArray::last_valid_element, XARRAY_ASSERT_NOT_NULL, XARRAY_EEMPTYARRAY, and XARRAY_SUCCESS.
| int xarray_RemoveObject | ( | XArray * | xarray, | |
| unsigned int | at_index | |||
| ) |
References XArray::array, XArray::last_valid_element, XARRAY_ASSERT_NOT_NULL, XARRAY_BOUNDS_CHECK, and XARRAY_SUCCESS.
Referenced by history_Prune(), xarray_RemoveObjects(), and xarray_RemoveObjectsAfter().
| int xarray_RemoveObjects | ( | XArray * | xarray, | |
| unsigned int | at_index, | |||
| int | count | |||
| ) |
| int xarray_RemoveObjectsAfter | ( | XArray * | xarray, | |
| unsigned int | index | |||
| ) |
References XARRAY_ASSERT_NOT_NULL, XARRAY_BOUNDS_CHECK, xarray_RemoveObject(), and XARRAY_SUCCESS.
Referenced by history_Prune().
| int xarray_ReplaceObject | ( | XArray * | xarray, | |
| unsigned int | index, | |||
| void * | new_object | |||
| ) |
References XArray::array, XARRAY_ASSERT_NOT_NULL, XARRAY_BOUNDS_CHECK, and XARRAY_SUCCESS.
Referenced by history_GoForwardSavingCurrentItem().
1.5.6