Man page - soldout_array(3)

Packages contains this manual

Manual


SOLDOUT_ARRAY (3) Library Functions Manual SOLDOUT_ARRAY (3)

NAME

soldout_array, arr_adjust, arr_free, arr_grow, arr_init, arr_insert, arr_item, arr_newitem, arr_remove, arr_sorted_find, arr_sorted_find_i, parr_adjust, parr_free, parr_grow, parr_init, parr_insert, parr_pop, parr_push, parr_remove, parr_sorted_find, parr_sorted_find_i, parr_top — array handling functions for soldout

SYNOPSIS

#include <array.h>

int

(*array_cmp_fn) ( void *key , void *array_entry );

int

arr_adjust ( struct array *arr );

void

arr_free ( struct array *arr );

int

arr_grow ( struct array *arr , int need );

void

arr_init ( struct array *arr , size_t unit );

int

arr_insert ( struct array *arr , int nb , int n );

void *

arr_item ( struct array *arr , int no );

int

arr_newitem ( struct array *arr );

void

arr_remove ( struct array *arr , int idx );

void *

arr_sorted_find ( struct array *arr , void *key , array_cmp_fn cmp );

int

arr_sorted_find_i ( struct array *arr , void *key , array_cmp_fn cmp );

int

parr_adjust ( struct parray *arr );

void

parr_free ( struct parray *arr );

int

parr_grow ( struct parray *arr , int need );

void

parr_init ( struct parray *arr );

int

parr_insert ( struct parray *parr , int nb , int n );

void *

parr_pop ( struct parray *arr );

int

parr_push ( struct parray *arr , void *i );

void *

parr_remove ( struct parray *arr , int idx );

void *

parr_sorted_find ( struct parray *arr , void *key , array_cmp_fn cmp );

int

parr_sorted_find_i ( struct parray *arr , void *key , array_cmp_fn cmp );

void *

parr_top ( struct parray *arr );

DESCRIPTION

Types

struct array

generic linear array. Consists of the following fields:

void * base

actual array data.

int size

size of the array.

int asize

allocated size.

size_t unit

reallocation unit size.

struct parray

array of pointers. Consists of the following fields:

void ** item

actual parray data.

int size

size of the parray.

int asize

allocated size.

array_cmp_fn

comparison function for sorted arrays.

Functions

arr_adjust ()

shrink the allocated memory to fit exactly the needs.

arr_free ()

free the structure contents (but NOT the struct itself).

arr_grow ()

increase the array size to fit the given number of elements.

arr_init ()

initialize the contents of the struct.

arr_insert ()

insert nb elements before the n one.

arr_item ()

return a pointer to the n element.

arr_newitem ()

return the index of a new element appended to the array arr .

arr_remove ()

remove the n-th elements of the array.

arr_sorted_find ()

O(log n) search in a sorted array, returning entry.

arr_sorted_find_i ()

O(log n) search in a sorted array, returning index of the smallest element larger than the key.

parr_adjust ()

shrink the allocated memory to fit exactly the needs.

parr_free ()

free the structure contents (but NOT the struct itself).

parr_grow ()

increase the array size to fit the given number of elements.

parr_init ()

initialize the contents of the struct.

parr_insert ()

insert nb elements before the n one.

parr_pop ()

pop the last item of the array and return it.

parr_push ()

push a pointer at the end of the array (= append).

parr_remove ()

remove the idx element of the array and return it.

parr_sorted_find ()

O(log n) search in a sorted array, returning entry.

parr_sorted_find_i ()

O(log n) search in a sorted array, returning index of the smallest element larger than the key.

parr_top ()

return the top the stack (i.e. the last element of the array).

RETURN VALUES

The arr_adjust (), arr_grow (), arr_insert (), parr_adjust (), parr_grow (), parr_insert () and parr_push () functions return on success 1; on error - 0.

The arr_free (), arr_init (), arr_remove (), parr_free () and parr_init () functions do not return a value.

The arr_item (), arr_sorted_find (), parr_pop (), parr_remove (), parr_sorted_find () and parr_top () functions return a pointer to the element on success; on error - NULL.

The arr_newitem () function returns the index on success; on error -1.

The arr_sorted_find_i () and parr_sorted_find_i () functions return an index.

SEE ALSO

soldout (3)

AUTHORS

The soldout library was written by Natasha "

Kerensikova " Porte < natacha@instinctive.eu >. Manual page was originally written by Massimo Manghi < mxmanghi@apache.org >, and rewritten to mdoc format by Svyatoslav Mishyn < juef@openmailbox.org >. Debian April 13, 2016 SOLDOUT_ARRAY (3)