libcake 0.0.1
Librairie en C
Référence du fichier strutf8.h

Fichier contenant le prototypes de tout ce qui touche aux chaînes de caractères UTF-8. Plus de détails...

Aller au code source de ce fichier.

Structures de données

struct  cake_string_utf8
 Chaînes de caractères encodées en UTF-8. Plus de détails...
 
struct  cake_list_string_utf8
 Tableau dynamique de chaînes de caractères encodées en UTF-8. Plus de détails...
 
struct  cake_string_utf8_pair
 Associe 2 chaînes de caractères encodées en UTF-8. Plus de détails...
 
struct  cake_linkedlist_string_utf8_pair
 Listes liées de chaînes de caractères encodées en UTF-8. Plus de détails...
 
struct  cake_strutf8_reader
 Lit le contenu d'une chaîne de caractères encodées en UTF-8. Plus de détails...
 

Définitions de type

typedef struct cake_string_utf8 Cake_String_UTF8
 Chaînes de caractères encodées en UTF-8.
 
typedef struct cake_list_string_utf8 Cake_List_String_UTF8
 Tableau dynamique de chaînes de caractères encodées en UTF-8.
 
typedef struct cake_string_utf8_pair Cake_String_UTF8_Pair
 Associe 2 chaînes de caractères encodées en UTF-8.
 
typedef struct cake_linkedlist_string_utf8_pair Cake_LinkedList_String_UTF8_Pair
 Listes liées de chaînes de caractères encodées en UTF-8.
 
typedef struct cake_strutf8_reader Cake_String_UTF8_Reader
 Lit le contenu d'une chaîne de caractères encodées en UTF-8.
 

Fonctions

CAKE_C CAKE_API void cake_create_strutf8 (Cake_String_UTF8 *utf)
 Initialise un Cake_String_UTF8. Plus de détails...
 
CAKE_C CAKE_API Cake_String_UTF8cake_strutf8 (const char *value)
 Crée dynamiquement un Cake_String_UTF8. Plus de détails...
 
CAKE_C CAKE_API void cake_free_strutf8 (Cake_String_UTF8 *utf)
 Libère la mémoire d'un Cake_String_UTF8 alloué dynamiquement. Plus de détails...
 
CAKE_C CAKE_API void cake_create_strutf8_reader_str (Cake_String_UTF8_Reader *dest, const char *str)
 Crée un lecteur de Cake_String_UTF8. Plus de détails...
 
CAKE_C CAKE_API void cake_create_strutf8_reader_utf (Cake_String_UTF8_Reader *dest, Cake_String_UTF8 *utf)
 Crée un lecteur de Cake_String_UTF8. Plus de détails...
 
CAKE_C CAKE_API void cake_strutf8_reader_skip_char (Cake_String_UTF8_Reader *reader, char value)
 Saute tous les prochains caractères si égaux à value. Plus de détails...
 
CAKE_C CAKE_API void cake_strutf8_reader_skip_achar (Cake_String_UTF8_Reader *reader, const char *values, ulonglong size)
 Saute tous les prochains caractères si égaux à un des caractères de values. Plus de détails...
 
CAKE_C CAKE_API Cake_String_UTF8cake_strutf8_reader_read_line (Cake_String_UTF8_Reader *reader)
 Retourne la prochaine ligne du lecteur. Plus de détails...
 
CAKE_C CAKE_API Cake_String_UTF8_Paircake_strutf8_pair (const char *key, const char *value)
 Crée dynamiquement un Cake_String_UTF8_Pair. Plus de détails...
 
CAKE_C CAKE_API void cake_free_strutf8_pair (Cake_String_UTF8_Pair *pair)
 Libère la mémoire d'un Cake_String_UTF8_Pair alloué dynamiquement. Plus de détails...
 
CAKE_C CAKE_API Cake_String_UTF8cake_strutf8_pre_alloc (ulonglong size)
 Crée un Cake_String_UTF8 dynamiquement et pré-alloue le buffer interne de la taille spécifiée. Plus de détails...
 
CAKE_C CAKE_API Cake_List_String_UTF8cake_list_strutf8 ()
 Crée dynamiquement une Cake_List_String_UTF8, ne pas oublier de free. Plus de détails...
 
CAKE_C CAKE_API cake_bool cake_strutf8_copy (Cake_String_UTF8 *dest, Cake_String_UTF8 *src)
 Copie une chaîne vers une autre. Memory leak si dest a déjà une chaine de caractères. Plus de détails...
 
CAKE_C CAKE_API uchar cake_strutf8_add_wchar (Cake_String_UTF8 *dest, wchar_t value)
 Ajoute un caractère unicode dans la chaîne UTF-8. Plus de détails...
 
CAKE_C CAKE_API void cake_strutf8_add_wchar_array (Cake_String_UTF8 *dest, const wchar_t *str)
 Ajoute une chaîne de caractères unicode dans la chaîne UTF-8. Plus de détails...
 
CAKE_C CAKE_API cake_bool cake_strutf8_add_char_array (Cake_String_UTF8 *dest, const char *str)
 Ajoute une chaîne de caractères dans la chaîne UTF-8. Plus de détails...
 
CAKE_C CAKE_API cake_bool cake_strutf8_add_bytes (Cake_String_UTF8 *dest, const cake_byte *bytes, ulonglong size)
 
CAKE_C CAKE_API uchar cake_strutf8_insert_wchar (Cake_String_UTF8 *utf, ulonglong index, wchar_t value)
 Insère un caractère unicode dans la chaîne UTF-8. Plus de détails...
 
CAKE_C CAKE_API cake_bool cake_strutf8_insert_char_array (Cake_String_UTF8 *utf, ulonglong index, const char *str)
 Insère une chaîne de caractères dans la chaîne UTF-8. Plus de détails...
 
CAKE_C CAKE_API cake_bool cake_list_strutf8_add_char_array (Cake_List_String_UTF8 *list, const char *str)
 Ajoute une chaîne de caractères dans une Cake_List_String_UTF8. Plus de détails...
 
CAKE_C CAKE_API cake_bool cake_list_strutf8_remove (Cake_List_String_UTF8 *list, ulonglong index)
 Supprime une chaîne de caractères dans la liste à l'index spécifié. Plus de détails...
 
CAKE_C CAKE_API cake_bool cake_list_strutf8_insert (Cake_List_String_UTF8 *list, ulonglong index, const char *str)
 Insert une chaîne de caractères dans une Cake_List_String_UTF8. Plus de détails...
 
CAKE_C CAKE_API void cake_strutf8_reverse (Cake_String_UTF8 *utf)
 Inverse une chaîne UTF-8, par exemple "Hello World" deviendra "dlroW olleH". Plus de détails...
 
CAKE_C CAKE_API cake_bool cake_strutf8_remove_index (Cake_String_UTF8 *utf, ulonglong index)
 Supprime le caractère UTF-8 stocké à l'index passé. Plus de détails...
 
CAKE_C CAKE_API ulonglong cake_strutf8_remove_all (Cake_String_UTF8 *utf, const char *value)
 Supprime toutes les occurences de la sous-chaîne passée. Plus de détails...
 
CAKE_C CAKE_API cake_bool cake_strutf8_remove_start (Cake_String_UTF8 *utf, const char *value)
 Supprime le début d'une chaîne UTF-8 si celle-ci commence par la sous-chaîne passée. Plus de détails...
 
CAKE_C CAKE_API cake_bool cake_strutf8_remove_from_to (Cake_String_UTF8 *utf, ulonglong fromIndex, ulonglong toIndex)
 Supprime tous les caractères entre 2 positions. Plus de détails...
 
CAKE_C CAKE_API cake_bool cake_strutf8_remove_from_to_internal (Cake_String_UTF8 *utf, ulonglong fromIndex, ulonglong toIndex)
 Supprime tous les caractères entre 2 positions internes. Plus de détails...
 
CAKE_C CAKE_API void cake_strutf8_to_utf16 (Cake_String_UTF8 *src, Cake_String_UTF16 *dest)
 Convertit une chaîne UTF-8 en chaîne UTF-16. Plus de détails...
 
CAKE_C CAKE_API cake_bool cake_char_array_to_strutf8 (const char *src, Cake_String_UTF8 *dest)
 Copie une chaîne de caractères dans une chaîne UTF-8, aucune conversion n'est effectuée, si la chaîne de caractères n'est pas de l'UTF-8, des effets indésirables peuvent survenir. Plus de détails...
 
CAKE_C CAKE_API int cake_strutf8_decode (const uchar *src, char bytes)
 Convertit une suite d'octets en une valeur numérique unicode. Plus de détails...
 
CAKE_C CAKE_API uchar cake_strutf8_wchar_to_byte (wchar_t value, uchar **buffer)
 Convertit un caractère UTF-16 en suite d'octets UTF-8. Plus de détails...
 
CAKE_C CAKE_API void cake_strutf8_wchar_to_byte_ext (wchar_t value, uchar **buffer, ulonglong *index)
 
CAKE_C CAKE_API void cake_strutf16_to_strutf8 (Cake_String_UTF16 *src, Cake_String_UTF8 *dest)
 
CAKE_C CAKE_API void cake_wchar_array_to_strutf8 (const wchar_t *src, Cake_String_UTF8 *dest)
 
CAKE_C CAKE_API void cake_wchar_array_to_strutf8_len (Cake_String_UTF8 *dest, const wchar_t *src, ulonglong len)
 
CAKE_C CAKE_API ulonglong cake_strutf8_to_ulonglong (Cake_String_UTF8 *utf)
 
CAKE_C CAKE_API void cake_ulonglong_to_char_array (ulonglong value, char *buffer)
 
CAKE_C CAKE_API char * cake_ulonglong_to_char_array_dyn (ulonglong value)
 
CAKE_C CAKE_API float cake_strutf8_to_float (Cake_String_UTF8 *utf, char decimalSeparator)
 
CAKE_C CAKE_API void cake_clear_strutf8 (Cake_String_UTF8 *utf)
 
CAKE_C CAKE_API void cake_free_list_strutf8 (Cake_List_String_UTF8 *list)
 
CAKE_C CAKE_API ulonglong cake_strutf8_index_by_index (const uchar *pArrayStart, uchar *pArrayEnd, ulonglong utfIndex, uchar **pStart, uchar **pEnd, cake_byte *bytes)
 
CAKE_C CAKE_API ulonglong cake_strutf8_index_by_index_reverse (Cake_String_UTF8 *utf, ulonglong utfIndex, cake_byte *bytes)
 
CAKE_C CAKE_API uchar * cake_strutf8_search_from_end (Cake_String_UTF8 *utf, const char *research, ulonglong *internalIndex)
 Recherche la sous-chaîne dans la chaîne UTF-8 à partir de internalIndex en allant vers le début de la chaîne. Plus de détails...
 
CAKE_C CAKE_API uchar * cake_strutf8_search_from_start (Cake_String_UTF8 *utf, const char *research, ulonglong *internalIndex)
 Recherche la sous-chaîne dans la chaîne UTF-8 à partir de internalIndex en allant vers la fin de la chaîne. Plus de détails...
 
CAKE_C CAKE_API ulonglong cake_str_search (const char *str, char value, uchar **ptr)
 
CAKE_C CAKE_API uchar * cake_str_search_array (const char *str, const char *value)
 
CAKE_C CAKE_API cake_bool cake_strutf8_end_with (Cake_String_UTF8 *utf, const char *str)
 
CAKE_C CAKE_API cake_bool cake_strutf8_start_with (Cake_String_UTF8 *utf, const char *research)
 
CAKE_C CAKE_API cake_bool cake_str_starts_with (const char *src, const char *str)
 
CAKE_C CAKE_API cake_bool cake_strutf8_equals (const Cake_String_UTF8 *utf, const char *compare)
 
CAKE_C CAKE_API Cake_List_String_UTF8cake_strutf8_split (Cake_String_UTF8 *utf, const char *delim)
 Sépare les éléments d'une chaîne de caractères. Plus de détails...
 
CAKE_C CAKE_API ulonglong cake_strutf8_replace_all (Cake_String_UTF8 *utf, const char *old, const char *replacement)
 Remplace toutes les occurences de la sous-chaîne dans la chaîne. Plus de détails...
 
CAKE_C CAKE_API cake_bool cake_strutf8_replace_start (Cake_String_UTF8 *utf, const char *old, const char *replacement)
 Remplace le début de la chaîne par replacement si elle commence par old. Plus de détails...
 
CAKE_C CAKE_API cake_bool cake_strutf8_replace_end (Cake_String_UTF8 *utf, const char *old, const char *replacement)
 Remplace la fin de la chaîne par replacement si elle fini par old. Plus de détails...
 
CAKE_C CAKE_API cake_bool cake_strutf8_replace_from_start (Cake_String_UTF8 *utf, const char *old, const char *replacement)
 Remplace la première occurence de la chaîne de caractères passée. Plus de détails...
 
CAKE_C CAKE_API cake_bool cake_strutf8_replace_from_end (Cake_String_UTF8 *utf, const char *old, const char *replacement)
 
CAKE_C CAKE_API void cake_strutf8_to_lower (Cake_String_UTF8 *utf)
 Tous les caractères de la chaîne deviennent des minuscules. Plus de détails...
 
CAKE_C CAKE_API ulonglong cake_strutf8_wchar_array_calc_size (const wchar_t *str)
 
CAKE_C CAKE_API ulonglong cake_strutf8_length (Cake_String_UTF8 *utf)
 Calcule le nombre de caractères d'une chaîne UTF-8. Plus de détails...
 
CAKE_C CAKE_API ulonglong cake_str_count (const char *str)
 
CAKE_C CAKE_API uint cake_str_hex_to_uint (const uchar *str)
 
CAKE_C CAKE_API void cake_strutf8_decode_url (Cake_String_UTF8 *utf)
 
CAKE_C CAKE_API uchar cake_strutf8_dec_to_char (uint value, uchar **buffer)
 Convertie une valeur décimale en chaîne de caractères. Plus de détails...
 
CAKE_C CAKE_API void cake_str_dec_to_hexchar (uchar value, uchar dest[2])
 Stock une valeur décimale convertie en hexadécimale dans un buffer. Plus de détails...
 
CAKE_C CAKE_API cake_bool cake_str_equals (const char *str1, const char *str2)
 Vérifie qu'une chaîne de caractères soit strictement égale à une autre. Plus de détails...
 
CAKE_C CAKE_API ulonglong cake_str_number_of (const char *str, char value)
 Compte le nombre de fois qu'un caractère apparaît dans une chaîne de caractères. Plus de détails...
 
CAKE_C CAKE_API cake_bool cake_str_contains (const char *str, char value)
 
CAKE_C CAKE_API void cake_strutf8_vector_delete_callback (void *args)
 
CAKE_C CAKE_API void cake_strutf8_vector_delete_callback_ptr (void *args)
 
CAKE_C CAKE_API Cake_String_UTF8cake_strutf8_substring (Cake_String_UTF8 *from, ulonglong startIndex, ulonglong endIndex)
 
CAKE_C CAKE_API cake_bool cake_strutf8_set (Cake_String_UTF8 *dest, const char *value)
 

Description détaillée

Fichier contenant le prototypes de tout ce qui touche aux chaînes de caractères UTF-8.

Auteur
Tytraman

Documentation des fonctions

◆ cake_char_array_to_strutf8()

CAKE_C CAKE_API cake_bool cake_char_array_to_strutf8 ( const char *  src,
Cake_String_UTF8 dest 
)

Copie une chaîne de caractères dans une chaîne UTF-8, aucune conversion n'est effectuée, si la chaîne de caractères n'est pas de l'UTF-8, des effets indésirables peuvent survenir.

Paramètres
srcChaîne de caractères à copier.
destChaîne destination.

◆ cake_create_strutf8()

CAKE_C CAKE_API void cake_create_strutf8 ( Cake_String_UTF8 utf)

Initialise un Cake_String_UTF8.

Obsolète:
Utiliser cake_strutf8 à la place.
Paramètres
[out]utf- Chaîne à initialiser.

◆ cake_create_strutf8_reader_str()

CAKE_C CAKE_API void cake_create_strutf8_reader_str ( Cake_String_UTF8_Reader dest,
const char *  str 
)

Crée un lecteur de Cake_String_UTF8.

Paramètres
[out]dest- Pointeur dans lequel initialiser les données, ne doit pas être NULL.
[in]str- Chaîne de caractères à copier dans le lecteur.

◆ cake_create_strutf8_reader_utf()

CAKE_C CAKE_API void cake_create_strutf8_reader_utf ( Cake_String_UTF8_Reader dest,
Cake_String_UTF8 utf 
)

Crée un lecteur de Cake_String_UTF8.

Paramètres
[out]dest- Pointeur dans lequel initialiser les données, ne doit pas être NULL.
[in]utf- Référence utilisée par le lecteur.

◆ cake_free_strutf8()

CAKE_C CAKE_API void cake_free_strutf8 ( Cake_String_UTF8 utf)

Libère la mémoire d'un Cake_String_UTF8 alloué dynamiquement.

Paramètres
utf- La chaîne de caractères à faire disparaitre.

◆ cake_free_strutf8_pair()

CAKE_C CAKE_API void cake_free_strutf8_pair ( Cake_String_UTF8_Pair pair)

Libère la mémoire d'un Cake_String_UTF8_Pair alloué dynamiquement.

Paramètres
pair- La paire de chaînes à libérer.

◆ cake_list_strutf8()

CAKE_C CAKE_API Cake_List_String_UTF8 * cake_list_strutf8 ( )

Crée dynamiquement une Cake_List_String_UTF8, ne pas oublier de free.

Renvoie
La liste créée.

◆ cake_list_strutf8_add_char_array()

CAKE_C CAKE_API cake_bool cake_list_strutf8_add_char_array ( Cake_List_String_UTF8 list,
const char *  str 
)

Ajoute une chaîne de caractères dans une Cake_List_String_UTF8.

Paramètres
listLa liste destination.
strLa chaîne de caractères à ajouter.
Renvoie
cake_bool

◆ cake_list_strutf8_insert()

CAKE_C CAKE_API cake_bool cake_list_strutf8_insert ( Cake_List_String_UTF8 list,
ulonglong  index,
const char *  str 
)

Insert une chaîne de caractères dans une Cake_List_String_UTF8.

Paramètres
list
index
strLa chaîne de caractères à insérer.
Renvoie
Retourne cake_false si l'index est supérieur au nombre d'éléments.

◆ cake_list_strutf8_remove()

CAKE_C CAKE_API cake_bool cake_list_strutf8_remove ( Cake_List_String_UTF8 list,
ulonglong  index 
)

Supprime une chaîne de caractères dans la liste à l'index spécifié.

Paramètres
list
index
Renvoie
cake_bool

◆ cake_str_dec_to_hexchar()

CAKE_C CAKE_API void cake_str_dec_to_hexchar ( uchar  value,
uchar  dest[2] 
)

Stock une valeur décimale convertie en hexadécimale dans un buffer.

Avertissement
Aucun caractère NULL n'est mis à la fin !
Paramètres
valueValeur à convertir.
destBuffer destination.

◆ cake_str_equals()

CAKE_C CAKE_API cake_bool cake_str_equals ( const char *  str1,
const char *  str2 
)

Vérifie qu'une chaîne de caractères soit strictement égale à une autre.

Paramètres
str1Chaîne 1.
str2Chaîne 2.
Renvoie
cake_true si les chaînes de caractères sont identiques.

◆ cake_str_number_of()

CAKE_C CAKE_API ulonglong cake_str_number_of ( const char *  str,
char  value 
)

Compte le nombre de fois qu'un caractère apparaît dans une chaîne de caractères.

Paramètres
strChaîne à parcourir.
valueCaractère à compter.
Renvoie
Le nombre de fois que le caractère à été trouvé.

◆ cake_strutf8()

CAKE_C CAKE_API Cake_String_UTF8 * cake_strutf8 ( const char *  value)

Crée dynamiquement un Cake_String_UTF8.

Avertissement
Ne pas oublier de libérer la mémoire avec cake_free_strutf8.
Paramètres
[in]value- Chaîne de caractères à copier.
Renvoie
Cake_String_UTF8 * - La chaîne créée.
NULL en cas d'erreur.

◆ cake_strutf8_add_char_array()

CAKE_C CAKE_API cake_bool cake_strutf8_add_char_array ( Cake_String_UTF8 dest,
const char *  str 
)

Ajoute une chaîne de caractères dans la chaîne UTF-8.

Paramètres
dest
str

◆ cake_strutf8_add_wchar()

CAKE_C CAKE_API uchar cake_strutf8_add_wchar ( Cake_String_UTF8 dest,
wchar_t  value 
)

Ajoute un caractère unicode dans la chaîne UTF-8.

Paramètres
destLa chaîne destination.
valueLe caractère unicode.
Renvoie
Le nombre d'octets UTF-8 utilisés pour stocker le caractère.

◆ cake_strutf8_add_wchar_array()

CAKE_C CAKE_API void cake_strutf8_add_wchar_array ( Cake_String_UTF8 dest,
const wchar_t *  str 
)

Ajoute une chaîne de caractères unicode dans la chaîne UTF-8.

Paramètres
destLa chaîne destination.
strLa chaîne unicode à ajouter.

◆ cake_strutf8_copy()

CAKE_C CAKE_API cake_bool cake_strutf8_copy ( Cake_String_UTF8 dest,
Cake_String_UTF8 src 
)

Copie une chaîne vers une autre. Memory leak si dest a déjà une chaine de caractères.

Paramètres
destChaîne destination.
srcChaîne source.

◆ cake_strutf8_dec_to_char()

CAKE_C CAKE_API uchar cake_strutf8_dec_to_char ( uint  value,
uchar **  buffer 
)

Convertie une valeur décimale en chaîne de caractères.

Avertissement
buffer est dynamiquement alloué avec malloc, ne pas oublier de free quand il ne sert plus.
Paramètres
valueValeur à convertir.
bufferBuffer qui stockera la valeur convertie.
Renvoie
Le nombre d'octets utilisés pour stocker la valeur.

◆ cake_strutf8_decode()

CAKE_C CAKE_API int cake_strutf8_decode ( const uchar *  src,
char  bytes 
)

Convertit une suite d'octets en une valeur numérique unicode.

Paramètres
srcLa suite d'octets à convertir.
bytesLe nombre d'octets à convertir.
Renvoie
La valeur obtenue après conversion.

◆ cake_strutf8_insert_char_array()

CAKE_C CAKE_API cake_bool cake_strutf8_insert_char_array ( Cake_String_UTF8 utf,
ulonglong  index,
const char *  str 
)

Insère une chaîne de caractères dans la chaîne UTF-8.

Paramètres
utfLa chaîne destination.
indexL'index auquel insérer la chaîne de caractères.
strLa chaîne de caractères à insérer.
Renvoie
cake_true si la chaîne à bien été insérée.

◆ cake_strutf8_insert_wchar()

CAKE_C CAKE_API uchar cake_strutf8_insert_wchar ( Cake_String_UTF8 utf,
ulonglong  index,
wchar_t  value 
)

Insère un caractère unicode dans la chaîne UTF-8.

Paramètres
utfLa chaîne destination.
indexL'index auquel insérer le caractère.
valueLe caractère unicode à insérer.
Renvoie
Le nombre d'octets UTF-8 utilisés pour stocker le caractère.

◆ cake_strutf8_length()

CAKE_C CAKE_API ulonglong cake_strutf8_length ( Cake_String_UTF8 utf)

Calcule le nombre de caractères d'une chaîne UTF-8.

Paramètres
utfLa chaîne UTF-8.
Renvoie
Le nombre de caractères de la chaîne.

◆ cake_strutf8_pair()

CAKE_C CAKE_API Cake_String_UTF8_Pair * cake_strutf8_pair ( const char *  key,
const char *  value 
)

Crée dynamiquement un Cake_String_UTF8_Pair.

Avertissement
Ne pas oublier de libérer la mémoire avec cake_free_strutf8_pair.
Paramètres
[in]key- Chaîne 1 à copier.
[in]value- Chaîne 2 à copier.
Renvoie
Cake_String_UTF8_Pair * - La paire de chaînes créée.

◆ cake_strutf8_pre_alloc()

CAKE_C CAKE_API Cake_String_UTF8 * cake_strutf8_pre_alloc ( ulonglong  size)

Crée un Cake_String_UTF8 dynamiquement et pré-alloue le buffer interne de la taille spécifiée.

Avertissement
Ne pas oublier de libérer la mémoire avec cake_free_strutf8.
Paramètres
size- Taille du buffer interne.
Renvoie
Cake_String_UTF8 * - La chaîne pré-allouée.
NULL en cas d'erreur.

◆ cake_strutf8_reader_read_line()

CAKE_C CAKE_API Cake_String_UTF8 * cake_strutf8_reader_read_line ( Cake_String_UTF8_Reader reader)

Retourne la prochaine ligne du lecteur.

Paramètres
reader- Lecteur dans lequel chercher la prochaine ligne.
Renvoie
Cake_String_UTF8 * - La ligne trouvée.
NULL s'il n'y a plus de caractères à lire.

◆ cake_strutf8_reader_skip_achar()

CAKE_C CAKE_API void cake_strutf8_reader_skip_achar ( Cake_String_UTF8_Reader reader,
const char *  values,
ulonglong  size 
)

Saute tous les prochains caractères si égaux à un des caractères de values.

Paramètres
reader- Lecteur dans lequel sauter les caractères.
values- Caractères à sauter.
size- Nombre de caractères dans values.

◆ cake_strutf8_reader_skip_char()

CAKE_C CAKE_API void cake_strutf8_reader_skip_char ( Cake_String_UTF8_Reader reader,
char  value 
)

Saute tous les prochains caractères si égaux à value.

Paramètres
reader- Lecteur dans lequel sauter les caractères.
value- Caractère à sauter.

◆ cake_strutf8_remove_all()

CAKE_C CAKE_API ulonglong cake_strutf8_remove_all ( Cake_String_UTF8 utf,
const char *  value 
)

Supprime toutes les occurences de la sous-chaîne passée.

Paramètres
utfLa chaîne destination.
valueLa sous-chaîne à supprimer.
Renvoie
Le nombre d'occurences supprimées.

◆ cake_strutf8_remove_from_to()

CAKE_C CAKE_API cake_bool cake_strutf8_remove_from_to ( Cake_String_UTF8 utf,
ulonglong  fromIndex,
ulonglong  toIndex 
)

Supprime tous les caractères entre 2 positions.

Paramètres
utfLa Chaîne UTF-8.
fromIndexPosition de départ (compris).
toIndexPosition de fin (non compris).
Renvoie
cake_false si un des deux index est supérieur au nombre de caractères ou que fromIndex >= toIndex.

◆ cake_strutf8_remove_from_to_internal()

CAKE_C CAKE_API cake_bool cake_strutf8_remove_from_to_internal ( Cake_String_UTF8 utf,
ulonglong  fromIndex,
ulonglong  toIndex 
)

Supprime tous les caractères entre 2 positions internes.

Avertissement
Cette fonction est notamment utilisée par libcake.
Paramètres
utfLa chaîne UTF-8.
fromIndexPosition de départ (compris).
toIndexPosition de fin (non compris).
Renvoie
cake_false si un des deux index est supérieur au nombre de caractères ou que fromIndex >= toIndex.

◆ cake_strutf8_remove_index()

CAKE_C CAKE_API cake_bool cake_strutf8_remove_index ( Cake_String_UTF8 utf,
ulonglong  index 
)

Supprime le caractère UTF-8 stocké à l'index passé.

Paramètres
utfLa chaîne destination.
indexL'index auquel supprimer le caractère.
Renvoie
cake_false si l'index est supérieur au nombre de caractères.

◆ cake_strutf8_remove_start()

CAKE_C CAKE_API cake_bool cake_strutf8_remove_start ( Cake_String_UTF8 utf,
const char *  value 
)

Supprime le début d'une chaîne UTF-8 si celle-ci commence par la sous-chaîne passée.

Paramètres
utfLa chaîne UTF-8.
valueSous-chaîne à enlever.
Renvoie
cake_true si la sous-chaîne a été supprimée.

◆ cake_strutf8_replace_all()

CAKE_C CAKE_API ulonglong cake_strutf8_replace_all ( Cake_String_UTF8 utf,
const char *  old,
const char *  replacement 
)

Remplace toutes les occurences de la sous-chaîne dans la chaîne.

Paramètres
utfChaîne de caractères.
oldSous-chaîne à remplacer.
replacementNouvelle sous-chaîne.
Renvoie
Le nombre de sous-chaînes remplacées.

◆ cake_strutf8_replace_end()

CAKE_C CAKE_API cake_bool cake_strutf8_replace_end ( Cake_String_UTF8 utf,
const char *  old,
const char *  replacement 
)

Remplace la fin de la chaîne par replacement si elle fini par old.

Paramètres
utfChaîne de caractères.
oldSous-chaîne à remplacer.
replacementNouvelle sous-chaîne.
Renvoie
cake_true si la sous-chaîne a été modifiée.

◆ cake_strutf8_replace_from_start()

CAKE_C CAKE_API cake_bool cake_strutf8_replace_from_start ( Cake_String_UTF8 utf,
const char *  old,
const char *  replacement 
)

Remplace la première occurence de la chaîne de caractères passée.

Paramètres
utfLa chaîne UTF-8.
oldSous-chaîne à remplacer.
replacementNouvelle sous-chaîne.
Renvoie
cake_true si la sous-chaîne a été remplacée.

◆ cake_strutf8_replace_start()

CAKE_C CAKE_API cake_bool cake_strutf8_replace_start ( Cake_String_UTF8 utf,
const char *  old,
const char *  replacement 
)

Remplace le début de la chaîne par replacement si elle commence par old.

Paramètres
utfChaîne de caractères.
oldSous-chaîne à remplacer.
replacementNouvelle sous-chaîne.
Renvoie
cake_true si la sous-chaîne a été modifiée.

◆ cake_strutf8_reverse()

CAKE_C CAKE_API void cake_strutf8_reverse ( Cake_String_UTF8 utf)

Inverse une chaîne UTF-8, par exemple "Hello World" deviendra "dlroW olleH".

Paramètres
utfLa chaîne à inverser.

◆ cake_strutf8_search_from_end()

CAKE_C CAKE_API uchar * cake_strutf8_search_from_end ( Cake_String_UTF8 utf,
const char *  research,
ulonglong *  internalIndex 
)

Recherche la sous-chaîne dans la chaîne UTF-8 à partir de internalIndex en allant vers le début de la chaîne.

Paramètres
utfChaîne UTF-8 dans laquelle chercher.
researchSous-chaîne de caractères à rechercher.
internalIndexPointeur vers la valeur du début de la recherche, après traitement, sera égale à sa valeur - la longueur de la recherche - 1.
Renvoie
L'adresse de la première occurence trouvée ou NULL en cas de non trouvaille.

◆ cake_strutf8_search_from_start()

CAKE_C CAKE_API uchar * cake_strutf8_search_from_start ( Cake_String_UTF8 utf,
const char *  research,
ulonglong *  internalIndex 
)

Recherche la sous-chaîne dans la chaîne UTF-8 à partir de internalIndex en allant vers la fin de la chaîne.

Paramètres
utfChaîne UTF-8 dans laquelle chercher.
researchSous-chaîne de caractères à rechercher.
internalIndexPointeur vers la valeur du début de la recherche, après traitement, sera égale à sa valeur + la longueur de la recherche + 1.
Renvoie
L'adresse de la première occurence trouvée ou NULL en cas de non trouvaille.

◆ cake_strutf8_split()

CAKE_C CAKE_API Cake_List_String_UTF8 * cake_strutf8_split ( Cake_String_UTF8 utf,
const char *  delim 
)

Sépare les éléments d'une chaîne de caractères.

Paramètres
utfChaîne de caractères.
delimDélimiteur des éléments.
Renvoie
La liste des éléments séparés.

◆ cake_strutf8_to_lower()

CAKE_C CAKE_API void cake_strutf8_to_lower ( Cake_String_UTF8 utf)

Tous les caractères de la chaîne deviennent des minuscules.

Paramètres
utfChaîne de caractères.

◆ cake_strutf8_to_utf16()

CAKE_C CAKE_API void cake_strutf8_to_utf16 ( Cake_String_UTF8 src,
Cake_String_UTF16 dest 
)

Convertit une chaîne UTF-8 en chaîne UTF-16.

Paramètres
srcChaîne UTF-8 à convertir.
destChaîne destination.

◆ cake_strutf8_wchar_to_byte()

CAKE_C CAKE_API uchar cake_strutf8_wchar_to_byte ( wchar_t  value,
uchar **  buffer 
)

Convertit un caractère UTF-16 en suite d'octets UTF-8.

Avertissement
buffer est dynamiquement alloué avec malloc, ne pas oublier de free quand il ne sert plus.
Paramètres
valueLa valeur à convertir.
bufferBuffer qui stockera la suite d'octets.
Renvoie
Le nombre d'octets utilisés pour stocker la suite.