|
LibTRO 0
Uma biblioteca com funções semelhantes às do C para fins educacionais na Eletrônica, IF Sul Pelotas.
|
Ir para o código-fonte desse arquivo.
Definições e Macros | |
| #define | tro_strdybuf_dybuffer(buf) |
| #define | tro_str16dybuf_dybuffer(buf) |
Definições de Tipos | |
| typedef struct tro_strdybuf | tro_strdybuf |
| typedef struct tro_str16dybuf | tro_str16dybuf |
Funções | |
| size_t | tro_strulen (const char *str) |
| size_t | tro_str16ulen (const tro_char16 *str) |
| size_t | tro_conv_str_to_str16 (const char *in, size_t inlen, tro_char16 *out, size_t outcap) |
| size_t | tro_conv_str16_to_str (const tro_char16 *in, size_t inlen, char *out, size_t outcap) |
| tro_char16 * | tro_cnvlloc_str_to_str16 (const char *in, size_t inlen, size_t *lenout) |
| char * | tro_cnvlloc_str16_to_str (const tro_char16 *in, size_t inlen, size_t *lenout) |
| size_t | tro_str16len (const tro_char16 *str) |
| size_t | tro_str16nlen (const tro_char16 *str, size_t maxlen) |
| int | tro_str16cmp (const tro_char16 *s1, const tro_char16 *s2) |
| int | tro_str16ncmp (const tro_char16 *s1, const tro_char16 *s2, size_t maxlen) |
| tro_strdybuf * | tro_create_strdybuf (size_t pagecap) |
| void | tro_destroy_strdybuf (tro_strdybuf *buf) |
| bool | tro_strdybuf_writes (tro_strdybuf *buf, const char *data, size_t datal) |
| bool | tro_strdybuf_writes16 (tro_strdybuf *buf, const tro_char16 *data, size_t datal) |
| bool | tro_strdybuf_writeb (tro_strdybuf *buf, const uint8_t *data, size_t datal) |
| bool | tro_strdybuf_writec (tro_strdybuf *buf, tro_urune rune, size_t count) |
| tro_dybuf_pref | tro_strdybuf_preference (const tro_strdybuf *buf) |
| size_t | tro_strdybuf_get (tro_strdybuf *buf, char *out, size_t outcap) |
| char * | tro_strdybuf_getlloc (tro_strdybuf *buf, size_t *outlen) |
| tro_str16dybuf * | tro_create_str16dybuf (size_t pagecap) |
| void | tro_destroy_str16dybuf (tro_str16dybuf *buf) |
| bool | tro_str16dybuf_writes (tro_str16dybuf *buf, const char *data, size_t datal) |
| bool | tro_str16dybuf_writes16 (tro_str16dybuf *buf, const tro_char16 *data, size_t datal) |
| bool | tro_str16dybuf_writeb (tro_str16dybuf *buf, const uint8_t *data, size_t datal) |
| bool | tro_str16dybuf_writec (tro_str16dybuf *buf, tro_urune rune, size_t count) |
| tro_dybuf_pref | tro_str16dybuf_preference (const tro_str16dybuf *buf) |
| size_t | tro_str16dybuf_get (tro_str16dybuf *buf, tro_char16 *out, size_t outcap) |
| tro_char16 * | tro_str16dybuf_getlloc (tro_str16dybuf *buf, size_t *outlen) |
| bool | tro_sfmt (tro_dybuffer_obj buf, const char *format,...) |
| bool | tro_vsfmt (tro_dybuffer_obj buf, const char *format, va_list args) |
| bool | tro_sfmt16 (tro_dybuffer_obj buf, const tro_char16 *format,...) |
| bool | tro_vsfmt16 (tro_dybuffer_obj buf, const tro_char16 *format, va_list args) |
| char * | tro_str_fmt (size_t *outlen, const char *format,...) |
| char * | tro_vstr_fmt (size_t *outlen, const char *format, va_list args) |
| char * | tro_str_fmt16 (size_t *outlen, const tro_char16 *format,...) |
| char * | tro_vstr_fmt16 (size_t *outlen, const tro_char16 *format, va_list args) |
| tro_char16 * | tro_str16_fmt (size_t *outlen, const char *format,...) |
| tro_char16 * | tro_vstr16_fmt (size_t *outlen, const char *format, va_list args) |
| tro_char16 * | tro_str16_fmt16 (size_t *outlen, const tro_char16 *format,...) |
| tro_char16 * | tro_vstr16_fmt16 (size_t *outlen, const tro_char16 *format, va_list args) |
Variáveis | |
| const tro_dybuffer_i *const | tro_strdybuf_dybuffer_vt |
| const tro_dybuffer_i *const | tro_str16dybuf_dybuffer_vt |
| #define tro_strdybuf_dybuffer | ( | buf | ) |
Macro de cast de tro_strdybuf para tro_dybuffer_obj.
| #define tro_str16dybuf_dybuffer | ( | buf | ) |
Macro de cast de tro_str16dybuf para tro_dybuffer_obj.
| typedef struct tro_strdybuf tro_strdybuf |
Um buffer dinâmico de string UTF-8 que implementa a interface tro_dybuffer
| typedef struct tro_str16dybuf tro_str16dybuf |
Um buffer dinâmico de string UTF-16 que implementa a interface tro_dybuffer
| size_t tro_strulen | ( | const char * | str | ) |
| str | é uma string UTF-8 terminada em '\0'. |
| size_t tro_str16ulen | ( | const tro_char16 * | str | ) |
| str | é uma string UTF-16 terminada em '\0'. |
| size_t tro_conv_str_to_str16 | ( | const char * | in, |
| size_t | inlen, | ||
| tro_char16 * | out, | ||
| size_t | outcap ) |
Converte uma string UTF-8 em uma string UTF-16.
| in | é a string UTF-8. |
| inlen | é um comprimento de in. Caso seja 0, se assume in terminado em '\0'. |
| out | é onde a string UTF-16 será escrita. |
| outcap | é a capacidade de out. |
| size_t tro_conv_str16_to_str | ( | const tro_char16 * | in, |
| size_t | inlen, | ||
| char * | out, | ||
| size_t | outcap ) |
Converte uma string UTF-16 em uma string UTF-8.
| in | é a string UTF-16. |
| inlen | é um comprimento de in. Caso seja 0, se assume in terminado em '\0'. |
| out | é onde a string UTF-8 será escrita. |
| outcap | é a capacidade de out. |
| tro_char16 * tro_cnvlloc_str_to_str16 | ( | const char * | in, |
| size_t | inlen, | ||
| size_t * | lenout ) |
Converte uma string UTF-8 em uma string UTF-16.
| in | é a string UTF-8. |
| inlen | é um comprimento de in. Caso seja 0, se assume in terminado em '\0'. |
| lenout | é um ponteiro para armazenar o comprimento final da string UTF-16. Pode ser NULL. |
| char * tro_cnvlloc_str16_to_str | ( | const tro_char16 * | in, |
| size_t | inlen, | ||
| size_t * | lenout ) |
Converte uma string UTF-16 em uma string UTF-8.
| in | é a string UTF-16. |
| inlen | é um comprimento de in. Caso seja 0, se assume in terminado em '\0'. |
| lenout | é um ponteiro para armazenar o comprimento final da string UTF-8. Pode ser NULL. |
| size_t tro_str16len | ( | const tro_char16 * | str | ) |
Versão UTF-16 do strlen padrão do C.
| str | é uma string UTF-16 terminada em '\0'. |
| size_t tro_str16nlen | ( | const tro_char16 * | str, |
| size_t | maxlen ) |
Versão UTF-16 do strnlen padrão do C.
| str | é uma string UTF-16 terminada em '\0'. |
| maxlen | é o comprimento máximo a ser testado. |
| int tro_str16cmp | ( | const tro_char16 * | s1, |
| const tro_char16 * | s2 ) |
Versão UTF-16 do strcmp padrão do C.
| s1 | é uma string UTF-16 terminada em '\0'. |
| s2 | é outra string UTF-16 terminada em '\0'. |
| int tro_str16ncmp | ( | const tro_char16 * | s1, |
| const tro_char16 * | s2, | ||
| size_t | maxlen ) |
Versão UTF-16 do strncmp padrão do C.
| s1 | é uma string UTF-16 terminada em '\0'. |
| s2 | é outra string UTF-16 terminada em '\0'. |
| maxlen | é o comprimento máximo a ser testado. |
| tro_strdybuf * tro_create_strdybuf | ( | size_t | pagecap | ) |
Cria um objeto tro_strdybuf
| pagecap | é o tamanho de cada página de memória. |
| void tro_destroy_strdybuf | ( | tro_strdybuf * | buf | ) |
| buf | é o objeto a ser destruído. |
| bool tro_strdybuf_writes | ( | tro_strdybuf * | buf, |
| const char * | data, | ||
| size_t | datal ) |
| buf | o objeto. |
| data | é uma string UTF-8. |
| datal | é o comprimento de data, caso seja 0, se assume data terminado em '\0'. |
| bool tro_strdybuf_writes16 | ( | tro_strdybuf * | buf, |
| const tro_char16 * | data, | ||
| size_t | datal ) |
| buf | o objeto. |
| data | é uma string UTF-16. |
| datal | é o comprimento de data, caso seja 0, se assume data terminado em '\0'. |
| bool tro_strdybuf_writeb | ( | tro_strdybuf * | buf, |
| const uint8_t * | data, | ||
| size_t | datal ) |
| buf | o objeto. |
| data | é uma sequência de bytes arbitrária. |
| datal | é o comprimento de data. |
| bool tro_strdybuf_writec | ( | tro_strdybuf * | buf, |
| tro_urune | rune, | ||
| size_t | count ) |
| buf | o objeto. |
| rune | é uma runa (code point). |
| count | diz quantas vezes se deve escrever rune. |
| tro_dybuf_pref tro_strdybuf_preference | ( | const tro_strdybuf * | buf | ) |
| buf | o objeto. |
| size_t tro_strdybuf_get | ( | tro_strdybuf * | buf, |
| char * | out, | ||
| size_t | outcap ) |
| buf | o objeto. |
| out | é onde será escrita a string formada. Pode ser NULL. |
| outcap | é a capacidade de out (ignorado se out for NULL). |
| char * tro_strdybuf_getlloc | ( | tro_strdybuf * | buf, |
| size_t * | outlen ) |
| buf | o objeto. |
| outlen | é um ponteiro para armazenar o comprimento final da string |
| tro_str16dybuf * tro_create_str16dybuf | ( | size_t | pagecap | ) |
Cria um objeto tro_str16dybuf
| pagecap | é o tamanho de cada página de memória. |
| void tro_destroy_str16dybuf | ( | tro_str16dybuf * | buf | ) |
| buf | é o objeto a ser destruído. |
| bool tro_str16dybuf_writes | ( | tro_str16dybuf * | buf, |
| const char * | data, | ||
| size_t | datal ) |
| buf | o objeto. |
| data | é uma string UTF-8. |
| datal | é o comprimento de data, caso seja 0, se assume data terminado em '\0'. |
| bool tro_str16dybuf_writes16 | ( | tro_str16dybuf * | buf, |
| const tro_char16 * | data, | ||
| size_t | datal ) |
| buf | o objeto. |
| data | é uma string UTF-16. |
| datal | é o comprimento de data, caso seja 0, se assume data terminado em '\0'. |
| bool tro_str16dybuf_writeb | ( | tro_str16dybuf * | buf, |
| const uint8_t * | data, | ||
| size_t | datal ) |
| buf | o objeto. |
| data | é uma sequência de bytes arbitrária. |
| datal | é o comprimento de data. |
| bool tro_str16dybuf_writec | ( | tro_str16dybuf * | buf, |
| tro_urune | rune, | ||
| size_t | count ) |
| buf | o objeto. |
| rune | é uma runa (code point). |
| count | diz quantas vezes se deve escrever rune. |
| tro_dybuf_pref tro_str16dybuf_preference | ( | const tro_str16dybuf * | buf | ) |
| buf | o objeto. |
| size_t tro_str16dybuf_get | ( | tro_str16dybuf * | buf, |
| tro_char16 * | out, | ||
| size_t | outcap ) |
| buf | o objeto. |
| out | é onde será escrita a string formada. Pode ser NULL. |
| outcap | é a capacidade de out (ignorado se out for NULL). |
| tro_char16 * tro_str16dybuf_getlloc | ( | tro_str16dybuf * | buf, |
| size_t * | outlen ) |
| buf | o objeto. |
| outlen | é um ponteiro para armazenar o comprimento final da string |
| bool tro_sfmt | ( | tro_dybuffer_obj | buf, |
| const char * | format, | ||
| ... ) |
Esta função segue o padrão Especificadores de Formato TRO.
| buf | é o buffer de destino. |
| format | é a string de formatação em UTF-8. |
| ... | argumentos baseados em format. |
| bool tro_vsfmt | ( | tro_dybuffer_obj | buf, |
| const char * | format, | ||
| va_list | args ) |
Implementação com lista variádica de tro_sfmt.
Esta função segue o padrão Especificadores de Formato TRO.
| buf | é o buffer de destino. |
| format | é a string de formatação em UTF-8. |
| args | lista variádica de argumentos baseados em format. |
| bool tro_sfmt16 | ( | tro_dybuffer_obj | buf, |
| const tro_char16 * | format, | ||
| ... ) |
Esta função segue o padrão Especificadores de Formato TRO.
| buf | é o buffer de destino. |
| format | é a string de formatação em UTF-16. |
| ... | argumentos baseados em format. |
| bool tro_vsfmt16 | ( | tro_dybuffer_obj | buf, |
| const tro_char16 * | format, | ||
| va_list | args ) |
Implementação com lista variádica de tro_sfmt16.
Esta função segue o padrão Especificadores de Formato TRO.
| buf | é o buffer de destino. |
| format | é a string de formatação em UTF-16. |
| args | lista variádica de argumentos baseados em format. |
| char * tro_str_fmt | ( | size_t * | outlen, |
| const char * | format, | ||
| ... ) |
Esta função segue o padrão Especificadores de Formato TRO.
| outlen | é onde será armazenado o comprimento final da string. Pode ser NULL. |
| format | é a string de formatação em UTF-8. |
| ... | argumentos baseados em format. |
| char * tro_vstr_fmt | ( | size_t * | outlen, |
| const char * | format, | ||
| va_list | args ) |
Implementação com lista variádica de tro_str_fmt.
Esta função segue o padrão Especificadores de Formato TRO.
| outlen | é onde será armazenado o comprimento final da string. Pode ser NULL. |
| format | é a string de formatação em UTF-8. |
| args | lista variádica de argumentos baseados em format. |
| char * tro_str_fmt16 | ( | size_t * | outlen, |
| const tro_char16 * | format, | ||
| ... ) |
Esta função segue o padrão Especificadores de Formato TRO.
| outlen | é onde será armazenado o comprimento final da string. Pode ser NULL. |
| format | é a string de formatação em UTF-16. |
| ... | argumentos baseados em format. |
| char * tro_vstr_fmt16 | ( | size_t * | outlen, |
| const tro_char16 * | format, | ||
| va_list | args ) |
Implementação com lista variádica de tro_str_fmt16.
Esta função segue o padrão Especificadores de Formato TRO.
| outlen | é onde será armazenado o comprimento final da string. Pode ser NULL. |
| format | é a string de formatação em UTF-16. |
| args | lista variádica de argumentos baseados em format. |
| tro_char16 * tro_str16_fmt | ( | size_t * | outlen, |
| const char * | format, | ||
| ... ) |
Esta função segue o padrão Especificadores de Formato TRO.
| outlen | é onde será armazenado o comprimento final da string. Pode ser NULL. |
| format | é a string de formatação em UTF-8. |
| ... | argumentos baseados em format. |
| tro_char16 * tro_vstr16_fmt | ( | size_t * | outlen, |
| const char * | format, | ||
| va_list | args ) |
Implementação com lista variádica de tro_str16_fmt.
Esta função segue o padrão Especificadores de Formato TRO.
| outlen | é onde será armazenado o comprimento final da string. Pode ser NULL. |
| format | é a string de formatação em UTF-8. |
| args | lista variádica de argumentos baseados em format. |
| tro_char16 * tro_str16_fmt16 | ( | size_t * | outlen, |
| const tro_char16 * | format, | ||
| ... ) |
Esta função segue o padrão Especificadores de Formato TRO.
| outlen | é onde será armazenado o comprimento final da string. Pode ser NULL. |
| format | é a string de formatação em UTF-16. |
| ... | argumentos baseados em format. |
| tro_char16 * tro_vstr16_fmt16 | ( | size_t * | outlen, |
| const tro_char16 * | format, | ||
| va_list | args ) |
Implementação com lista variádica de tro_str16_fmt16.
Esta função segue o padrão Especificadores de Formato TRO.
| outlen | é onde será armazenado o comprimento final da string. Pode ser NULL. |
| format | é a string de formatação em UTF-16. |
| args | lista variádica de argumentos baseados em format. |
| const tro_dybuffer_i* const tro_strdybuf_dybuffer_vt |
Tabela virtual com os métodos de tro_strdybuf para a interface tro_dybuffer.
| const tro_dybuffer_i* const tro_str16dybuf_dybuffer_vt |
Tabela virtual com os métodos de tro_str16dybuf para a interface tro_dybuffer.