version 1.1, 2013/01/17 10:05:35
|
version 1.2, 2013/05/30 09:07:33
|
Line 52 SUCH DAMAGE.
|
Line 52 SUCH DAMAGE.
|
* @numItems = Number of Items |
* @numItems = Number of Items |
* return: NULL error, != NULL allocated memory for array |
* return: NULL error, != NULL allocated memory for array |
*/ |
*/ |
inline array_t * | array_t * |
array_Init(int numItems) |
array_Init(int numItems) |
{ |
{ |
array_t *arr = NULL; |
array_t *arr = NULL; |
Line 137 array_To(array_t * __restrict arr)
|
Line 137 array_To(array_t * __restrict arr)
|
* @arr = Array |
* @arr = Array |
* return: none |
* return: none |
*/ |
*/ |
inline void | void |
array_Free(array_t * __restrict arr) |
array_Free(array_t * __restrict arr) |
{ |
{ |
register int i; |
register int i; |
Line 160 array_Free(array_t * __restrict arr)
|
Line 160 array_Free(array_t * __restrict arr)
|
* @parr = Array |
* @parr = Array |
* return: none |
* return: none |
*/ |
*/ |
inline void | void |
array_Destroy(array_t ** __restrict parr) |
array_Destroy(array_t ** __restrict parr) |
{ |
{ |
if (!parr || !*parr) |
if (!parr || !*parr) |
Line 178 array_Destroy(array_t ** __restrict parr)
|
Line 178 array_Destroy(array_t ** __restrict parr)
|
* @arr = Array |
* @arr = Array |
* return: -1 empty or >-1 position of last used element |
* return: -1 empty or >-1 position of last used element |
*/ |
*/ |
inline int | int |
array_Len(array_t * __restrict arr) |
array_Len(array_t * __restrict arr) |
{ |
{ |
register int i; |
register int i; |
Line 347 array_Copy(array_t ** __restrict dest, array_t * __res
|
Line 347 array_Copy(array_t ** __restrict dest, array_t * __res
|
* @data = Element, if set NULL GET element at position or !=NULL PUT element at position |
* @data = Element, if set NULL GET element at position or !=NULL PUT element at position |
* return: -1 error or !=-1 return element at position |
* return: -1 error or !=-1 return element at position |
*/ |
*/ |
inline void * | void * |
array_Elem(array_t * __restrict arr, int n, void *data) |
array_Elem(array_t * __restrict arr, int n, void *data) |
{ |
{ |
void *dat = NULL; |
void *dat = NULL; |
Line 373 array_Elem(array_t * __restrict arr, int n, void *data
|
Line 373 array_Elem(array_t * __restrict arr, int n, void *data
|
* @nogrow = Don't grow array if not enough space |
* @nogrow = Don't grow array if not enough space |
* return: -1 not found empty position, array is full!, >-1 return position of stored element into array |
* return: -1 not found empty position, array is full!, >-1 return position of stored element into array |
*/ |
*/ |
inline int | int |
array_Push(array_t * __restrict arr, void **data, int nogrow) | array_Push(array_t * __restrict arr, void *data, int nogrow) |
{ |
{ |
int ret = -1; |
int ret = -1; |
|
|
Line 387 array_Push(array_t * __restrict arr, void **data, int
|
Line 387 array_Push(array_t * __restrict arr, void **data, int
|
if (!nogrow && ret >= array_Size(arr) && array_Grow(arr, ret + 1, 0)) |
if (!nogrow && ret >= array_Size(arr) && array_Grow(arr, ret + 1, 0)) |
return -1; |
return -1; |
|
|
ret = arr->arr_last++; | ret = ++arr->arr_last; |
if (data) | arr->arr_data[arr->arr_last] = data; |
arr->arr_data[arr->arr_last] = *data; | |
|
|
return ret; |
return ret; |
} |
} |
Line 402 array_Push(array_t * __restrict arr, void **data, int
|
Line 401 array_Push(array_t * __restrict arr, void **data, int
|
* @nodel = Don't delete after Pop element |
* @nodel = Don't delete after Pop element |
* return: -1 not found used position, array is empty!, >-1 return element position |
* return: -1 not found used position, array is empty!, >-1 return element position |
*/ |
*/ |
inline int | int |
array_Pop(array_t * __restrict arr, void ** __restrict data, int nodel) |
array_Pop(array_t * __restrict arr, void ** __restrict data, int nodel) |
{ |
{ |
int ret = -1; |
int ret = -1; |
Line 410 array_Pop(array_t * __restrict arr, void ** __restrict
|
Line 409 array_Pop(array_t * __restrict arr, void ** __restrict
|
if (!arr) |
if (!arr) |
return -1; |
return -1; |
|
|
ret = array_Last(arr); | if ((ret = array_Last(arr)) != -1) { |
| if (data) |
if (data) | *data = arr->arr_data[arr->arr_last]; |
*data = arr->arr_data[ret]; | if (!nodel) |
if (!nodel) | arr->arr_data[arr->arr_last] = NULL; |
arr->arr_data[arr->arr_last--] = NULL; | arr->arr_last--; |
| } |
|
|
return ret; |
return ret; |
} |
} |