libin103 1.4
Bibliothèque de structures de données en C
Chargement...
Recherche...
Aucune correspondance
Définitions de type | Fonctions
Référence du fichier character_set.h

Ensemble contenant des valeurs de type char Plus de détails...

#include <stdlib.h>
#include <stdbool.h>
#include "character_list.h"

Aller au code source de ce fichier.

Définitions de type

typedef character_list_t character_set_t
 Type de données pour représenter un ensemble contenant des valeurs de type char
 

Fonctions

void character_set_init (character_set_t *set)
 Initialisation d'un nouvel ensemble contenant des valeurs de type char
 
void character_set_destroy (character_set_t *set)
 Destruction d'un ensemble.
 
int character_set_insert (character_set_t *set, char data)
 Ajouter un élément de type char dans l'ensemble.
 
int character_set_remove (character_set_t *set, char *data)
 Supprimer un élément de type char dans l'ensemble.
 
int character_set_union (character_set_t *setu, const character_set_t *set1, const character_set_t *set2)
 Union de deux ensembles.
 
int character_set_intersection (character_set_t *seti, const character_set_t *set1, const character_set_t *set2)
 Intersection de deux ensembles.
 
int character_set_difference (character_set_t *setd, const character_set_t *set1, const character_set_t *set2)
 Différence de deux ensembles.
 
bool character_set_is_member (const character_set_t *set, char data)
 Fonction testant l'appartenance d'une valeur à un ensemble.
 
bool character_set_is_subset (const character_set_t *set1, const character_set_t *set2)
 Fonction testant si un ensemble est sous-ensemble d'un autre.
 
bool character_set_is_equal (const character_set_t *set1, const character_set_t *set2)
 Fonction testant si un ensemble est égale à un autre.
 
int character_set_size (const character_set_t *set)
 Accesseur sur la taille d'un ensemble.
 

Description détaillée

Ensemble contenant des valeurs de type char

Documentation des définitions de type

◆ character_set_t

Type de données pour représenter un ensemble contenant des valeurs de type char

Un ensemble est une liste chaînée gérée de manière adéquate: insertion en queue de liste avec un maintien de la propriété d'unicité des éléments dans l'ensemble.

Documentation des fonctions

◆ character_set_destroy()

void character_set_destroy ( character_set_t * set)

Destruction d'un ensemble.

Utilise la fonction de destruction des listes chaînées pour parcourir la liste et détruire tous les éléments de l'ensemble.

Paramètres
setest un pointeur vers la structure de données des ensembles character_set_t

◆ character_set_difference()

int character_set_difference ( character_set_t * setd,
const character_set_t * set1,
const character_set_t * set2 )

Différence de deux ensembles.

Etant donné un pointeur vers un ensemble et un pointeur vers un autre ensemble, crée un troisième ensemble représentant la différence des deux ensembles, i.e., l'ensemble des éléments appartenant au premier ensemble et pas au second.

Paramètres
setdl'ensemble résultat de la différence de type character_set_t
set1premier argument de l'opération d'union de type character_set_t
set2second argument de l'opération d'union de type character_set_t
Renvoie
un entier indiquant si tout s'est bien passé (0 pour OK, et -1 en cas de problème)

◆ character_set_init()

void character_set_init ( character_set_t * set)

Initialisation d'un nouvel ensemble contenant des valeurs de type char

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 l'ensemble

Paramètres
setest un pointeur vers la structure de données des ensembles character_set_t

◆ character_set_insert()

int character_set_insert ( character_set_t * set,
char data )

Ajouter un élément de type char dans l'ensemble.

Etant donné un pointeur vers un ensemble (représenté par une liste chaînée) et une valeur de type char, ajoute un nouvel élément à l'ensemble avec cette valeur en maintenant l'unicité de la valeur dans l'ensemble.

Paramètres
setest un pointeur vers la structure de données character_set_t @pram data une valeur de type char à ajouter à la file
Renvoie
un entier indiquant si tout s'est bien passé (0 pour OK, et -1 en cas de problème mémoire)

◆ character_set_intersection()

int character_set_intersection ( character_set_t * seti,
const character_set_t * set1,
const character_set_t * set2 )

Intersection de deux ensembles.

Etant donné un pointeur vers un ensemble et un pointeur vers un autre ensemble, crée un troisième ensemble représentant l'intersection des deux ensembles

Paramètres
setil'ensemble résultat de l'intersection de type character_set_t
set1premier argument de l'opération d'union de type character_set_t
set2second argument de l'opération d'union de type character_set_t
Renvoie
un entier indiquant si tout s'est bien passé (0 pour OK, et -1 en cas de problème)

◆ character_set_is_equal()

bool character_set_is_equal ( const character_set_t * set1,
const character_set_t * set2 )

Fonction testant si un ensemble est égale à un autre.

Etant donné un pointeur vers un ensemble et un pointeur vers un second ensemble indique si le premier ensemble est égale au second, i.e., tous les élements du premier ensemble sont dans le second et réciproquement

Paramètres
set1ensemble de type character_set_t
set2ensemble de type character_set_t
Renvoie
une valeur booléenne indiquant si set1 est égale à set2

◆ character_set_is_member()

bool character_set_is_member ( const character_set_t * set,
char data )

Fonction testant l'appartenance d'une valeur à un ensemble.

Etant donné un pointeur vers un ensemble et une valeur indique si cette valeur est dans l'ensembe ou non

Paramètres
setensemble de type character_set_t
datavaleur de type char que l'on souhaite tester la présence dans set
Renvoie
une valeur booléenne indiquant data appartient à l'ensemble set

◆ character_set_is_subset()

bool character_set_is_subset ( const character_set_t * set1,
const character_set_t * set2 )

Fonction testant si un ensemble est sous-ensemble d'un autre.

Etant donné un pointeur vers un ensemble et un pointeur vers un second ensemble indique si le premier ensemble est inclus dans le second, i.e., tous les élements du premier ensemble sont dans le second.

Paramètres
set1ensemble de type character_set_t
set2ensemble de type character_set_t
Renvoie
une valeur booléenne indiquant si set1 est inclus dans set2

◆ character_set_remove()

int character_set_remove ( character_set_t * set,
char * data )

Supprimer un élément de type char dans l'ensemble.

Etant donné un pointeur vers un ensemble (représenté par une liste chaînée) et un pointeur vers une valeur de type char, supprime l'élément de l'ensemble.

Paramètres
setest un pointeur vers la structure de données character_set_t @pram data est pointeur vers une variable de type char qui représente la valeur à supprimer
Renvoie
un entier indiquant si tout s'est bien passé (0 pour OK, et -1 en cas de problème mémoire)

◆ character_set_size()

int character_set_size ( const character_set_t * set)

Accesseur sur la taille d'un ensemble.

Etant donné un pointeur vers un ensemble (représentée par une liste chaînée), retourne la valeur du champ size

Paramètres
setest un pointeur vers la structure de données character_set_t
Renvoie
un entier indiquant la taille (i.e., le nombre d'éléments) de l'ensemble

◆ character_set_union()

int character_set_union ( character_set_t * setu,
const character_set_t * set1,
const character_set_t * set2 )

Union de deux ensembles.

Etant donné un pointeur vers un ensemble et un pointeur vers un autre ensemble, crée un troisième ensemble représentant l'union des deux ensembles

Paramètres
setul'ensemble résultat de l'union de type character_set_t
set1premier argument de l'opération d'union de type character_set_t
set2second argument de l'opération d'union de type character_set_t
Renvoie
un entier indiquant si tout s'est bien passé (0 pour OK, et -1 en cas de problème)