52 int (*
compare)(
const void *key1,
const void *key2);
57 void* (*build)(
const void *data);
98 int (*compare) (
const void *key1,
const void *key2),
99 void* (*build)(
const void *data),
100 void (*destroy)(
void *data));
int generic_list_rem_next(generic_list_t *list, generic_list_elmt_t *element, void **data)
Suppression dans une liste chainée.
bool generic_list_is_tail(generic_list_elmt_t *element)
Prédicat pour tester si un élément est le dernier maillon d'une liste chaînée.
struct generic_list_ generic_list_t
Type de données pour représenter une liste chainée contenant des void*
int generic_list_size(generic_list_t *list)
Accesseur sur la taille de la liste.
bool generic_list_is_head(generic_list_t *list, generic_list_elmt_t *element)
Prédicat pour tester si un élément est le premier maillon d'une liste chaînée.
struct generic_list_elmt_ generic_list_elmt_t
Type de données pour représenter un maillon d'une liste chainée contenant des void*
int generic_list_ins_next(generic_list_t *list, generic_list_elmt_t *element, const void *data)
Insertion dans une liste chainée.
generic_list_elmt_t * generic_list_tail(generic_list_t *list)
Accesseur sur le dernier élément de la liste.
void * generic_list_data(generic_list_elmt_t *element)
Accesseur sur la donnée contenue dans un élément d'une liste chaînée.
generic_list_elmt_t * generic_list_head(generic_list_t *list)
Accesseur sur le premier élément de la liste.
void generic_list_destroy(generic_list_t *list)
Destruction d'une liste chainée.
generic_list_elmt_t * generic_list_next(generic_list_elmt_t *element)
Accesseur sur le successeur d'un élément.
void generic_list_init(generic_list_t *list, int(*compare)(const void *key1, const void *key2), void *(*build)(const void *data), void(*destroy)(void *data))
Initialisation d'une nouvelle liste chainée.
Type de données pour représenter une liste chainée contenant des void*
Definition generic_list.h:49
int size
Definition generic_list.h:50
generic_list_elmt_t * tail
Definition generic_list.h:66
int(* compare)(const void *key1, const void *key2)
Definition generic_list.h:52
void(* destroy)(void *data)
Definition generic_list.h:60
generic_list_elmt_t * head
Definition generic_list.h:64
Type de données pour représenter un maillon d'une liste chainée contenant des void*
Definition generic_list.h:30
void * data
Definition generic_list.h:31
struct generic_list_elmt_ * next
Definition generic_list.h:32