libin103 1.4
Bibliothèque de structures de données en C
|
File (FIFO) générique contenant des valeurs de type void* Plus de détails...
Aller au code source de ce fichier.
Définitions de type | |
typedef generic_list_t | generic_stack_t |
Type de données pour représenter une pile générique contenant des valeurs de type void* | |
Fonctions | |
void | generic_stack_init (generic_stack_t *stack, int(*compare)(const void *key1, const void *key2), void *(*build)(const void *data), void(*destroy)(void *data)) |
Initialisation d'une nouvelle pile contenant des valeurs de type void* | |
void | generic_stack_destroy (generic_stack_t *stack) |
Destruction d'une pile. | |
int | generic_stack_push (generic_stack_t *stack, const void *data) |
Ajouter un élément de type void* sur la pile. | |
int | generic_stack_pop (generic_stack_t *stack, void **data) |
Supprime un élément de type void* du haut de la pile. | |
void * | generic_stack_peek (generic_stack_t *stack) |
Récupère la valeur de type void* du haut de la pile. | |
int | generic_stack_size (generic_stack_t *stack) |
Accesseur sur la taille d'une pile. | |
File (FIFO) générique contenant des valeurs de type void*
typedef generic_list_t generic_stack_t |
Type de données pour représenter une pile générique contenant des valeurs de type void*
Une pile est une liste chaînée gérée de manière adéquate: insertion en tête et suppression en tête.
void generic_stack_destroy | ( | generic_stack_t * | stack | ) |
Destruction d'une pile.
Utilise la fonction de destruction des listes chaînées pour parcourir la liste et détruire tous les éléments de la pile.
stack | est un pointeur vers la structure de données des piles generic_stack_t |
void generic_stack_init | ( | generic_stack_t * | stack, |
int(*)(const void *key1, const void *key2) | compare, | ||
void *(*)(const void *data) | build, | ||
void(*)(void *data) | destroy ) |
Initialisation d'une nouvelle pile contenant des valeurs de type void*
Utilise la fonction d'initalisation des listes chaînée pour mettre à zéro la taille et à NULL les pointeurs vers le premier et le dernier élément de la liste, i.e., de la pile. Cette fonction nécessite une fonction de comparaison des éléments de la pile, une fonction de construction d'un élément de la pile et une fonction de destruction des éléments de la pile.
queue | est un pointeur vers la structure de données des piles generic_queue_t |
compare | fonction permettant la comparaison de deux éléments de la pile |
build | fonction permettant la construction d'une valeur de la pile |
destroy | fonction permettant la destruction d'une valeur de la pile |
void * generic_stack_peek | ( | generic_stack_t * | stack | ) |
Récupère la valeur de type void* du haut de la pile.
Etant donné un pointeur vers une pile (représentée par une liste chaînée), récupère la valeur de l'élément au dessus de la pile sans le supprimer.
stack | est un pointeur vers la structure de données generic_stack_t |
int generic_stack_pop | ( | generic_stack_t * | stack, |
void ** | data ) |
Supprime un élément de type void* du haut de la pile.
Etant donné un pointeur vers une pile (représentée par une liste chaînée), supprime l'élément en haut de la pile (le dernier à avoir été inséré)
stack | est un pointeur vers la structure de données generic_stack_t |
@pram data un pointeur sur type void* qui permet de récupérer la valeur de l'élément supprimer de la pile
int generic_stack_push | ( | generic_stack_t * | stack, |
const void * | data ) |
Ajouter un élément de type void* sur la pile.
Etant donné un pointeur vers une pile (représentée par une liste chaînée) et une valeur de type void*, ajoute un nouvel élément à la pile (en "haut" de la pile) avec cette valeur
stack | est un pointeur vers la structure de données generic_stack_t |
@pram data une valeur de type void* à ajouter à la pile
int generic_stack_size | ( | generic_stack_t * | stack | ) |
Accesseur sur la taille d'une pile.
Etant donné un pointeur vers une pile (représentée par une liste chaînée), retourne la valeur du champ size
stack | est un pointeur vers la structure de données generic_stack_t |