GflsUtf8

GflsUtf8 — Functions for UTF-8 strings

Functions

Includes

#include <gfls/gfls.h>

Description

Additional functions for UTF-8 strings, to complement what is provided by GLib.

Functions

gfls_utf8_find_very_long_line ()

const gchar *
gfls_utf8_find_very_long_line (const gchar *str,
                               guint max_n_bytes_per_line);

Finds if a line in str exceeds max_n_bytes_per_line .

For performance reasons, str is not checked whether it is a valid UTF-8 string. So you must call for example g_utf8_validate() beforehand.

Parameters

str

a UTF-8 nul-terminated string.

 

max_n_bytes_per_line

the maximum number of bytes per line, without counting the newline character(s).

 

Returns

a pointer to the beginning of the first very long line found, or NULL if not found.

Since: 0.3


gfls_utf8_validate ()

GflsValidatedString *
gfls_utf8_validate (GBytes *bytes);

Validates bytes . The invalid bytes will be escaped with gfls_utils_bytes_to_hex_representation() and will be located in separate (invalid) GflsValidatedStringChunk's.

The format of the input bytes is important: the data contained in bytes must always be nul-terminated, but this must not be included in the GBytes length. (The reason is to accommodate the convention of GflsValidatedStringChunk, to avoid a copy if the whole bytes is valid).

The returned GflsValidatedString has already been simplified; see gfls_validated_string_builder_simplify().

[skip]

Parameters

bytes

a nul-terminated GBytes.

 

Returns

a new GflsValidatedString, or NULL if bytes is empty.

[transfer full][nullable]

Since: 0.5