World of Might and Magic  0.2.0
Open reimplementation of Might and Magic 6 7 8 game engine
String Manipulation
+ Граф связей класса String Manipulation:

Перечисления

enum  AVEscapeMode { AV_ESCAPE_MODE_AUTO, AV_ESCAPE_MODE_BACKSLASH, AV_ESCAPE_MODE_QUOTE }
 

Функции

int av_strstart (const char *str, const char *pfx, const char **ptr)
 
int av_stristart (const char *str, const char *pfx, const char **ptr)
 
char * av_stristr (const char *haystack, const char *needle)
 
char * av_strnstr (const char *haystack, const char *needle, size_t hay_length)
 
size_t av_strlcpy (char *dst, const char *src, size_t size)
 
size_t av_strlcat (char *dst, const char *src, size_t size)
 
size_t av_strlcatf (char *dst, size_t size, const char *fmt,...) av_printf_format(3
 
size_t static size_t av_strnlen (const char *s, size_t len)
 
char * av_asprintf (const char *fmt,...) av_printf_format(1
 
char char * av_d2str (double d)
 
char * av_get_token (const char **buf, const char *term)
 
char * av_strtok (char *s, const char *delim, char **saveptr)
 
static av_const int av_isdigit (int c)
 
static av_const int av_isgraph (int c)
 
static av_const int av_isspace (int c)
 
static av_const int av_toupper (int c)
 
static av_const int av_tolower (int c)
 
static av_const int av_isxdigit (int c)
 
int av_strcasecmp (const char *a, const char *b)
 
int av_strncasecmp (const char *a, const char *b, size_t n)
 
char * av_strireplace (const char *str, const char *from, const char *to)
 
const char * av_basename (const char *path)
 
const char * av_dirname (char *path)
 
int av_match_name (const char *name, const char *names)
 
char * av_append_path_component (const char *path, const char *component)
 
av_warn_unused_result int av_escape (char **dst, const char *src, const char *special_chars, enum AVEscapeMode mode, int flags)
 
av_warn_unused_result int av_utf8_decode (int32_t *codep, const uint8_t **bufp, const uint8_t *buf_end, unsigned int flags)
 
int av_match_list (const char *name, const char *list, char separator)
 
int av_sscanf (const char *string, const char *format,...)
 

Подробное описание

Перечисления

◆ AVEscapeMode

#include <C:/git/world-of-might-and-magic/lib/win32/x86/ffmpeg-4.2.2/include/libavutil/avstring.h>

Элементы перечислений
AV_ESCAPE_MODE_AUTO 

Use auto-selected escaping mode.

AV_ESCAPE_MODE_BACKSLASH 

Use backslash escaping.

AV_ESCAPE_MODE_QUOTE 

Use single-quote escaping.

См. определение в файле avstring.h строка 313

Функции

◆ av_strstart()

int av_strstart ( const char *  str,
const char *  pfx,
const char **  ptr 
)

#include <C:/git/world-of-might-and-magic/lib/win32/x86/ffmpeg-4.2.2/include/libavutil/avstring.h>

Return non-zero if pfx is a prefix of str. If it is, *ptr is set to the address of the first character in str after the prefix.

Аргументы
strinput string
pfxprefix to test
ptrupdated if the prefix is matched inside str
Возвращает
non-zero if the prefix matches, zero otherwise

◆ av_stristart()

int av_stristart ( const char *  str,
const char *  pfx,
const char **  ptr 
)

#include <C:/git/world-of-might-and-magic/lib/win32/x86/ffmpeg-4.2.2/include/libavutil/avstring.h>

Return non-zero if pfx is a prefix of str independent of case. If it is, *ptr is set to the address of the first character in str after the prefix.

Аргументы
strinput string
pfxprefix to test
ptrupdated if the prefix is matched inside str
Возвращает
non-zero if the prefix matches, zero otherwise

◆ av_stristr()

char* av_stristr ( const char *  haystack,
const char *  needle 
)

#include <C:/git/world-of-might-and-magic/lib/win32/x86/ffmpeg-4.2.2/include/libavutil/avstring.h>

Locate the first case-independent occurrence in the string haystack of the string needle. A zero-length string needle is considered to match at the start of haystack.

This function is a case-insensitive version of the standard strstr().

Аргументы
haystackstring to search in
needlestring to search for
Возвращает
pointer to the located match within haystack or a null pointer if no match

◆ av_strnstr()

char* av_strnstr ( const char *  haystack,
const char *  needle,
size_t  hay_length 
)

#include <C:/git/world-of-might-and-magic/lib/win32/x86/ffmpeg-4.2.2/include/libavutil/avstring.h>

Locate the first occurrence of the string needle in the string haystack where not more than hay_length characters are searched. A zero-length string needle is considered to match at the start of haystack.

This function is a length-limited version of the standard strstr().

Аргументы
haystackstring to search in
needlestring to search for
hay_lengthlength of string to search in
Возвращает
pointer to the located match within haystack or a null pointer if no match

◆ av_strlcpy()

size_t av_strlcpy ( char *  dst,
const char *  src,
size_t  size 
)

#include <C:/git/world-of-might-and-magic/lib/win32/x86/ffmpeg-4.2.2/include/libavutil/avstring.h>

Copy the string src to dst, but no more than size - 1 bytes, and null-terminate dst.

This function is the same as BSD strlcpy().

Аргументы
dstdestination buffer
srcsource string
sizesize of destination buffer
Возвращает
the length of src
Предупреждения
since the return value is the length of src, src absolutely must be a properly 0-terminated string, otherwise this will read beyond the end of the buffer and possibly crash.

◆ av_strlcat()

size_t av_strlcat ( char *  dst,
const char *  src,
size_t  size 
)

#include <C:/git/world-of-might-and-magic/lib/win32/x86/ffmpeg-4.2.2/include/libavutil/avstring.h>

Append the string src to the string dst, but to a total length of no more than size - 1 bytes, and null-terminate dst.

This function is similar to BSD strlcat(), but differs when size <= strlen(dst).

Аргументы
dstdestination buffer
srcsource string
sizesize of destination buffer
Возвращает
the total length of src and dst
Предупреждения
since the return value use the length of src and dst, these absolutely must be a properly 0-terminated strings, otherwise this will read beyond the end of the buffer and possibly crash.

◆ av_strlcatf()

size_t av_strlcatf ( char *  dst,
size_t  size,
const char *  fmt,
  ... 
)

#include <C:/git/world-of-might-and-magic/lib/win32/x86/ffmpeg-4.2.2/include/libavutil/avstring.h>

Append output to a string, according to a format. Never write out of the destination buffer, and always put a terminating 0 within the buffer.

Аргументы
dstdestination buffer (string to which the output is appended)
sizetotal size of the destination buffer
fmtprintf-compatible format string, specifying how the following parameters are used
Возвращает
the length of the string that would have been generated if enough space had been available

◆ av_strnlen()

size_t static size_t av_strnlen ( const char *  s,
size_t  len 
)
inlinestatic

#include <C:/git/world-of-might-and-magic/lib/win32/x86/ffmpeg-4.2.2/include/libavutil/avstring.h>

Get the count of continuous non zero chars starting from the beginning.

Аргументы
lenmaximum number of characters to check in the string, that is the maximum value which is returned by the function

См. определение в файле avstring.h строка 140

141 {
142  size_t i;
143  for (i = 0; i < len && s[i]; i++)
144  ;
145  return i;
146 }

◆ av_asprintf()

char* av_asprintf ( const char *  fmt,
  ... 
)

#include <C:/git/world-of-might-and-magic/lib/win32/x86/ffmpeg-4.2.2/include/libavutil/avstring.h>

Print arguments following specified format into a large enough auto allocated buffer. It is similar to GNU asprintf().

Аргументы
fmtprintf-compatible format string, specifying how the following parameters are used.
Возвращает
the allocated string
Заметки
You have to free the string yourself with av_free().

◆ av_d2str()

char char* av_d2str ( double  d)

◆ av_get_token()

char* av_get_token ( const char **  buf,
const char *  term 
)

#include <C:/git/world-of-might-and-magic/lib/win32/x86/ffmpeg-4.2.2/include/libavutil/avstring.h>

Unescape the given string until a non escaped terminating char, and return the token corresponding to the unescaped string.

The normal \ and ' escaping is supported. Leading and trailing whitespaces are removed, unless they are escaped with '\' or are enclosed between ''.

Аргументы
bufthe buffer to parse, buf will be updated to point to the terminating char
terma 0-terminated list of terminating chars
Возвращает
the malloced unescaped string, which must be av_freed by the user, NULL in case of allocation failure

◆ av_strtok()

char* av_strtok ( char *  s,
const char *  delim,
char **  saveptr 
)

#include <C:/git/world-of-might-and-magic/lib/win32/x86/ffmpeg-4.2.2/include/libavutil/avstring.h>

Split the string into several tokens which can be accessed by successive calls to av_strtok().

A token is defined as a sequence of characters not belonging to the set specified in delim.

On the first call to av_strtok(), s should point to the string to parse, and the value of saveptr is ignored. In subsequent calls, s should be NULL, and saveptr should be unchanged since the previous call.

This function is similar to strtok_r() defined in POSIX.1.

Аргументы
sthe string to parse, may be NULL
delim0-terminated list of token delimiters, must be non-NULL
saveptruser-provided pointer which points to stored information necessary for av_strtok() to continue scanning the same string. saveptr is updated to point to the next character after the first delimiter found, or to NULL if the string was terminated
Возвращает
the found token, or NULL when no token is found

◆ av_isdigit()

static av_const int av_isdigit ( int  c)
inlinestatic

#include <C:/git/world-of-might-and-magic/lib/win32/x86/ffmpeg-4.2.2/include/libavutil/avstring.h>

Locale-independent conversion of ASCII isdigit.

См. определение в файле avstring.h строка 206

207 {
208  return c >= '0' && c <= '9';
209 }

Используется в av_isxdigit().

+ Граф вызова функции:

◆ av_isgraph()

static av_const int av_isgraph ( int  c)
inlinestatic

#include <C:/git/world-of-might-and-magic/lib/win32/x86/ffmpeg-4.2.2/include/libavutil/avstring.h>

Locale-independent conversion of ASCII isgraph.

См. определение в файле avstring.h строка 214

215 {
216  return c > 32 && c < 127;
217 }

◆ av_isspace()

static av_const int av_isspace ( int  c)
inlinestatic

#include <C:/git/world-of-might-and-magic/lib/win32/x86/ffmpeg-4.2.2/include/libavutil/avstring.h>

Locale-independent conversion of ASCII isspace.

См. определение в файле avstring.h строка 222

223 {
224  return c == ' ' || c == '\f' || c == '\n' || c == '\r' || c == '\t' ||
225  c == '\v';
226 }

◆ av_toupper()

static av_const int av_toupper ( int  c)
inlinestatic

#include <C:/git/world-of-might-and-magic/lib/win32/x86/ffmpeg-4.2.2/include/libavutil/avstring.h>

Locale-independent conversion of ASCII characters to uppercase.

См. определение в файле avstring.h строка 231

232 {
233  if (c >= 'a' && c <= 'z')
234  c ^= 0x20;
235  return c;
236 }

◆ av_tolower()

static av_const int av_tolower ( int  c)
inlinestatic

#include <C:/git/world-of-might-and-magic/lib/win32/x86/ffmpeg-4.2.2/include/libavutil/avstring.h>

Locale-independent conversion of ASCII characters to lowercase.

См. определение в файле avstring.h строка 241

242 {
243  if (c >= 'A' && c <= 'Z')
244  c ^= 0x20;
245  return c;
246 }

Используется в av_isxdigit().

+ Граф вызова функции:

◆ av_isxdigit()

static av_const int av_isxdigit ( int  c)
inlinestatic

#include <C:/git/world-of-might-and-magic/lib/win32/x86/ffmpeg-4.2.2/include/libavutil/avstring.h>

Locale-independent conversion of ASCII isxdigit.

См. определение в файле avstring.h строка 251

252 {
253  c = av_tolower(c);
254  return av_isdigit(c) || (c >= 'a' && c <= 'f');
255 }

Перекрестные ссылки av_isdigit() и av_tolower().

+ Граф вызовов:

◆ av_strcasecmp()

int av_strcasecmp ( const char *  a,
const char *  b 
)

#include <C:/git/world-of-might-and-magic/lib/win32/x86/ffmpeg-4.2.2/include/libavutil/avstring.h>

Locale-independent case-insensitive compare.

Заметки
This means only ASCII-range characters are case-insensitive

◆ av_strncasecmp()

int av_strncasecmp ( const char *  a,
const char *  b,
size_t  n 
)

#include <C:/git/world-of-might-and-magic/lib/win32/x86/ffmpeg-4.2.2/include/libavutil/avstring.h>

Locale-independent case-insensitive compare.

Заметки
This means only ASCII-range characters are case-insensitive

◆ av_strireplace()

char* av_strireplace ( const char *  str,
const char *  from,
const char *  to 
)

#include <C:/git/world-of-might-and-magic/lib/win32/x86/ffmpeg-4.2.2/include/libavutil/avstring.h>

Locale-independent strings replace.

Заметки
This means only ASCII-range characters are replace

◆ av_basename()

const char* av_basename ( const char *  path)

#include <C:/git/world-of-might-and-magic/lib/win32/x86/ffmpeg-4.2.2/include/libavutil/avstring.h>

Thread safe basename.

Аргументы
paththe path, on DOS both \ and / are considered separators.
Возвращает
pointer to the basename substring.

◆ av_dirname()

const char* av_dirname ( char *  path)

#include <C:/git/world-of-might-and-magic/lib/win32/x86/ffmpeg-4.2.2/include/libavutil/avstring.h>

Thread safe dirname.

Аргументы
paththe path, on DOS both \ and / are considered separators.
Возвращает
the path with the separator replaced by the string terminator or ".".
Заметки
the function may change the input string.

◆ av_match_name()

int av_match_name ( const char *  name,
const char *  names 
)

#include <C:/git/world-of-might-and-magic/lib/win32/x86/ffmpeg-4.2.2/include/libavutil/avstring.h>

Match instances of a name in a comma-separated list of names. List entries are checked from the start to the end of the names list, the first match ends further processing. If an entry prefixed with '-' matches, then 0 is returned. The "ALL" list entry is considered to match all names.

Аргументы
nameName to look for.
namesList of names.
Возвращает
1 on match, 0 otherwise.

◆ av_append_path_component()

char* av_append_path_component ( const char *  path,
const char *  component 
)

#include <C:/git/world-of-might-and-magic/lib/win32/x86/ffmpeg-4.2.2/include/libavutil/avstring.h>

Append path component to the existing path. Path separator '/' is placed between when needed. Resulting string have to be freed with av_free().

Аргументы
pathbase path
componentcomponent to be appended
Возвращает
new path or NULL on error.

◆ av_escape()

av_warn_unused_result int av_escape ( char **  dst,
const char *  src,
const char *  special_chars,
enum AVEscapeMode  mode,
int  flags 
)

#include <C:/git/world-of-might-and-magic/lib/win32/x86/ffmpeg-4.2.2/include/libavutil/avstring.h>

Escape string in src, and put the escaped string in an allocated string in *dst, which must be freed with av_free().

Аргументы
dstpointer where an allocated string is put
srcstring to escape, must be non-NULL
special_charsstring containing the special characters which need to be escaped, can be NULL
modeescape mode to employ, see AV_ESCAPE_MODE_* macros. Any unknown value for mode will be considered equivalent to AV_ESCAPE_MODE_BACKSLASH, but this behaviour can change without notice.
flagsflags which control how to escape, see AV_ESCAPE_FLAG_ macros
Возвращает
the length of the allocated string, or a negative error code in case of error
См. также
av_bprint_escape()

◆ av_utf8_decode()

av_warn_unused_result int av_utf8_decode ( int32_t codep,
const uint8_t **  bufp,
const uint8_t buf_end,
unsigned int  flags 
)

#include <C:/git/world-of-might-and-magic/lib/win32/x86/ffmpeg-4.2.2/include/libavutil/avstring.h>

Read and decode a single UTF-8 code point (character) from the buffer in *buf, and update *buf to point to the next byte to decode.

In case of an invalid byte sequence, the pointer will be updated to the next byte after the invalid sequence and the function will return an error code.

Depending on the specified flags, the function will also fail in case the decoded code point does not belong to a valid range.

Заметки
For speed-relevant code a carefully implemented use of GET_UTF8() may be preferred.
Аргументы
codeppointer used to return the parsed code in case of success. The value in *codep is set even in case the range check fails.
bufppointer to the address the first byte of the sequence to decode, updated by the function to point to the byte next after the decoded sequence
buf_endpointer to the end of the buffer, points to the next byte past the last in the buffer. This is used to avoid buffer overreads (in case of an unfinished UTF-8 sequence towards the end of the buffer).
flagsa collection of AV_UTF8_FLAG_* flags
Возвращает
>= 0 in case a sequence was successfully read, a negative value in case of invalid sequence

◆ av_match_list()

int av_match_list ( const char *  name,
const char *  list,
char  separator 
)

#include <C:/git/world-of-might-and-magic/lib/win32/x86/ffmpeg-4.2.2/include/libavutil/avstring.h>

Check if a name is in a list.

Возвращает
0 if not found, or the 1 based index where it has been found in the list.

◆ av_sscanf()

int av_sscanf ( const char *  string,
const char *  format,
  ... 
)

#include <C:/git/world-of-might-and-magic/lib/win32/x86/ffmpeg-4.2.2/include/libavutil/avstring.h>

See libc sscanf manual for more information. Locale-independent sscanf implementation.

s
GLdouble s
Definition: SDL_opengl.h:2063
len
GLenum GLsizei len
Definition: SDL_opengl_glext.h:2929
AV_ESCAPE_MODE_QUOTE
@ AV_ESCAPE_MODE_QUOTE
Use single-quote escaping.
Definition: avstring.h:316
AV_ESCAPE_MODE_AUTO
@ AV_ESCAPE_MODE_AUTO
Use auto-selected escaping mode.
Definition: avstring.h:314
av_isdigit
static av_const int av_isdigit(int c)
Definition: avstring.h:206
c
const GLubyte * c
Definition: SDL_opengl_glext.h:11096
AV_ESCAPE_MODE_BACKSLASH
@ AV_ESCAPE_MODE_BACKSLASH
Use backslash escaping.
Definition: avstring.h:315
av_tolower
static av_const int av_tolower(int c)
Definition: avstring.h:241