Helpers for strings manipulation.
More...
|
| size_t | ec_strcmp_count (const char *s1, const char *s2) |
| |
| int | ec_str_startswith (const char *s, const char *beginning) |
| |
| bool | ec_str_is_space (const char *s) |
| |
| int | ec_str_parse_llint (const char *str, unsigned int base, int64_t min, int64_t max, int64_t *val) |
| |
| int | ec_str_parse_ullint (const char *str, unsigned int base, uint64_t min, uint64_t max, uint64_t *val) |
| |
| char * | ec_str_quote (const char *str, char quote, bool force) |
| |
| char * | ec_str_wrap (const char *str, size_t max_cols, size_t start_off) |
| |
Helpers for strings manipulation.
◆ ec_strcmp_count()
| size_t ec_strcmp_count |
( |
const char * |
s1, |
|
|
const char * |
s2 |
|
) |
| |
Count the number of identical characters at the beginning of two strings.
◆ ec_str_startswith()
| int ec_str_startswith |
( |
const char * |
s, |
|
|
const char * |
beginning |
|
) |
| |
Return 1 if the string starts with the given prefix.
◆ ec_str_is_space()
| bool ec_str_is_space |
( |
const char * |
s | ) |
|
Return true if the string contains only whitespace characters.
◆ ec_str_parse_llint()
| int ec_str_parse_llint |
( |
const char * |
str, |
|
|
unsigned int |
base, |
|
|
int64_t |
min, |
|
|
int64_t |
max, |
|
|
int64_t * |
val |
|
) |
| |
Parse a string for a signed integer.
- Parameters
-
| str | The string to parse. |
| base | The base (0 means "guess"). |
| min | The minimum allowed value. |
| max | The maximum allowed value. |
| val | The pointer to the value to be set on success. |
- Returns
- On success, return 0. Otherwise, return -1 and set errno.
◆ ec_str_parse_ullint()
| int ec_str_parse_ullint |
( |
const char * |
str, |
|
|
unsigned int |
base, |
|
|
uint64_t |
min, |
|
|
uint64_t |
max, |
|
|
uint64_t * |
val |
|
) |
| |
Parse a string for an unsigned integer.
- Parameters
-
| str | The string to parse. |
| base | The base (0 means "guess"). |
| min | The minimum allowed value. |
| max | The maximum allowed value. |
| val | The pointer to the value to be set on success. |
- Returns
- On success, return 0. Otherwise, return -1 and set errno.
◆ ec_str_quote()
| char* ec_str_quote |
( |
const char * |
str, |
|
|
char |
quote, |
|
|
bool |
force |
|
) |
| |
Quote a string, escaping nested quotes.
- Parameters
-
| str | The string to quote. |
| quote | The quote character to use: usually " or ' but can be anything. If 0,
select between " or ' automatically. |
| force | If true, always add quotes, else add them only if the string contains spaces or quotes. |
- Returns
- An allocated string, that must be freed by the caller using free().
- Examples
- parse-yaml/parse-yaml.c.
◆ ec_str_wrap()
| char* ec_str_wrap |
( |
const char * |
str, |
|
|
size_t |
max_cols, |
|
|
size_t |
start_off |
|
) |
| |
Wrap a text to a maximum number of columns.
- Parameters
-
| str | The input text. |
| max_cols | The maximum number of columns. |
| start_off | The number of already consumed columns on the first line, filled with padding in other lines. |
- Returns
- An allocated string containing the wrapped text. It must be freed by the user using free().