Replace str_t with struct str

master
Drew DeVault 5 years ago
parent c95b3ef042
commit e2794c96be
  1. 10
      include/str.h
  2. 12
      src/main.c
  3. 10
      src/string.c

@ -7,11 +7,9 @@ struct str {
size_t len, size; size_t len, size;
}; };
typedef struct str str_t; struct str *str_create();
void str_free(struct str *str);
str_t *str_create(); void str_reset(struct str *str);
void str_free(str_t *str); int str_append_ch(struct str *str, uint32_t ch);
void str_reset(str_t *str);
int str_append_ch(str_t *str, uint32_t ch);
#endif #endif

@ -17,7 +17,7 @@ char *strstr(const char *haystack, const char *needle);
char *strerror(int errnum); char *strerror(int errnum);
static int parse_section(struct parser *p) { static int parse_section(struct parser *p) {
str_t *section = str_create(); struct str *section = str_create();
uint32_t ch; uint32_t ch;
while ((ch = parser_getch(p)) != UTF8_INVALID) { while ((ch = parser_getch(p)) != UTF8_INVALID) {
if (ch < 0x80 && isdigit(ch)) { if (ch < 0x80 && isdigit(ch)) {
@ -43,8 +43,8 @@ static int parse_section(struct parser *p) {
return -1; return -1;
} }
static str_t *parse_extra(struct parser *p) { static struct str *parse_extra(struct parser *p) {
str_t *extra = str_create(); struct str *extra = str_create();
int ret = str_append_ch(extra, '"'); int ret = str_append_ch(extra, '"');
assert(ret != -1); assert(ret != -1);
uint32_t ch; uint32_t ch;
@ -66,9 +66,9 @@ static str_t *parse_extra(struct parser *p) {
} }
static void parse_preamble(struct parser *p) { static void parse_preamble(struct parser *p) {
str_t *name = str_create(); struct str *name = str_create();
int ex = 0; int ex = 0;
str_t *extras[2] = { NULL }; struct str *extras[2] = { NULL };
int section = -1; int section = -1;
uint32_t ch; uint32_t ch;
time_t date_time; time_t date_time;
@ -446,7 +446,7 @@ struct table_row {
struct table_cell { struct table_cell {
enum table_align align; enum table_align align;
str_t *contents; struct str *contents;
struct table_cell *next; struct table_cell *next;
}; };

@ -3,7 +3,7 @@
#include "str.h" #include "str.h"
#include "unicode.h" #include "unicode.h"
static int ensure_capacity(str_t *str, size_t len) { static int ensure_capacity(struct str *str, size_t len) {
if (len + 1 >= str->size) { if (len + 1 >= str->size) {
char *new = realloc(str->str, str->size * 2); char *new = realloc(str->str, str->size * 2);
if (!new) { if (!new) {
@ -15,8 +15,8 @@ static int ensure_capacity(str_t *str, size_t len) {
return 1; return 1;
} }
str_t *str_create() { struct str *str_create() {
str_t *str = calloc(sizeof(str_t), 1); struct str *str = calloc(sizeof(struct str), 1);
str->str = malloc(16); str->str = malloc(16);
str->size = 16; str->size = 16;
str->len = 0; str->len = 0;
@ -24,13 +24,13 @@ str_t *str_create() {
return str; return str;
} }
void str_free(str_t *str) { void str_free(struct str *str) {
if (!str) return; if (!str) return;
free(str->str); free(str->str);
free(str); free(str);
} }
int str_append_ch(str_t *str, uint32_t ch) { int str_append_ch(struct str *str, uint32_t ch) {
int size = utf8_chsize(ch); int size = utf8_chsize(ch);
if (size <= 0) { if (size <= 0) {
return -1; return -1;

Loading…
Cancel
Save