#ifndef ABR_H #define ABR_H typedef int (*comparer) (void *, void *); typedef void (*appliquer) (void *, void *); typedef struct abr *abr; abr abr_creer (comparer cmp); void *abr_chercher (abr a, void *elt); /* retourne NULL lorsque l'élèment n'est pas present */ void abr_inserer (abr a, void *elt); void *abr_supprimer (abr a, void *elt); /* retourne l'void * retiré de la collection */ void abr_detruire (abr a, appliquer f, void *parametre_1); /* applique f(parametre_1, elt) sur les 'elt' conservés */ void abr_appliquer (abr a, appliquer f, void *parametre_1); /* execute f(parametre_1,elt) suivant l'ordre de l'abr */ #endif