aboutsummaryrefslogtreecommitdiff
path: root/src/txtacc.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/txtacc.c')
-rw-r--r--src/txtacc.c124
1 files changed, 62 insertions, 62 deletions
diff --git a/src/txtacc.c b/src/txtacc.c
index 5b9a197..c753f21 100644
--- a/src/txtacc.c
+++ b/src/txtacc.c
@@ -19,51 +19,51 @@
#endif
#include <string.h>
#include <stdlib.h>
-#include "grecs.h"
+#include "argot.h"
-struct grecs_txtacc_entry
+struct argot_txtacc_entry
{
char *buf; /* Text buffer */
size_t size; /* Buffer size */
size_t len; /* Actual number of bytes in buffer */
};
#define TXTACC_BUFSIZE 1024
-#define grecs_txtacc_entry_freesize(e) ((e)->size - (e)->len)
+#define argot_txtacc_entry_freesize(e) ((e)->size - (e)->len)
-struct grecs_txtacc
+struct argot_txtacc
{
- struct grecs_list *cur; /* Current build list */
- struct grecs_list *mem; /* List of already allocated elements */
+ struct argot_list *cur; /* Current build list */
+ struct argot_list *mem; /* List of already allocated elements */
};
-static struct grecs_txtacc_entry *
-grecs_txtacc_alloc_entry(struct grecs_list *list, size_t size)
+static struct argot_txtacc_entry *
+argot_txtacc_alloc_entry(struct argot_list *list, size_t size)
{
- struct grecs_txtacc_entry *p = grecs_malloc(sizeof (*p));
- p->buf = grecs_malloc(size);
+ struct argot_txtacc_entry *p = argot_malloc(sizeof (*p));
+ p->buf = argot_malloc(size);
p->size = size;
p->len = 0;
- grecs_list_append(list, p);
+ argot_list_append(list, p);
return p;
}
-static struct grecs_txtacc_entry *
-grecs_txtacc_cur_entry(struct grecs_txtacc *acc)
+static struct argot_txtacc_entry *
+argot_txtacc_cur_entry(struct argot_txtacc *acc)
{
- struct grecs_txtacc_entry *ent;
+ struct argot_txtacc_entry *ent;
- if (grecs_list_size(acc->cur) == 0)
- return grecs_txtacc_alloc_entry(acc->cur,
- GRECS_TXTACC_BUFSIZE);
+ if (argot_list_size(acc->cur) == 0)
+ return argot_txtacc_alloc_entry(acc->cur,
+ ARGOT_TXTACC_BUFSIZE);
ent = acc->cur->tail->data;
- if (grecs_txtacc_entry_freesize(ent) == 0)
- ent = grecs_txtacc_alloc_entry(acc->cur,
- GRECS_TXTACC_BUFSIZE);
+ if (argot_txtacc_entry_freesize(ent) == 0)
+ ent = argot_txtacc_alloc_entry(acc->cur,
+ ARGOT_TXTACC_BUFSIZE);
return ent;
}
static void
-grecs_txtacc_entry_append(struct grecs_txtacc_entry *ent,
+argot_txtacc_entry_append(struct argot_txtacc_entry *ent,
const char *p, size_t size)
{
memcpy(ent->buf + ent->len, p, size);
@@ -71,10 +71,10 @@ grecs_txtacc_entry_append(struct grecs_txtacc_entry *ent,
}
static void
-grecs_txtacc_entry_tailor(struct grecs_txtacc_entry *ent)
+argot_txtacc_entry_tailor(struct argot_txtacc_entry *ent)
{
if (ent->size > ent->len) {
- char *p = grecs_realloc(ent->buf, ent->len);
+ char *p = argot_realloc(ent->buf, ent->len);
if (!p)
return;
ent->buf = p;
@@ -83,83 +83,83 @@ grecs_txtacc_entry_tailor(struct grecs_txtacc_entry *ent)
}
static void
-grecs_txtacc_entry_free(void *p)
+argot_txtacc_entry_free(void *p)
{
if (p) {
- struct grecs_txtacc_entry *ent = p;
+ struct argot_txtacc_entry *ent = p;
free(ent->buf);
free(ent);
}
}
-struct grecs_txtacc *
-grecs_txtacc_create()
+struct argot_txtacc *
+argot_txtacc_create()
{
- struct grecs_txtacc *acc = grecs_malloc(sizeof (*acc));
- acc->cur = grecs_list_create();
- acc->cur->free_entry = grecs_txtacc_entry_free;
- acc->mem = grecs_list_create();
- acc->mem->free_entry = grecs_txtacc_entry_free;
+ struct argot_txtacc *acc = argot_malloc(sizeof (*acc));
+ acc->cur = argot_list_create();
+ acc->cur->free_entry = argot_txtacc_entry_free;
+ acc->mem = argot_list_create();
+ acc->mem->free_entry = argot_txtacc_entry_free;
return acc;
}
void
-grecs_txtacc_free(struct grecs_txtacc *acc)
+argot_txtacc_free(struct argot_txtacc *acc)
{
if (acc) {
- grecs_list_free(acc->cur);
- grecs_list_free(acc->mem);
+ argot_list_free(acc->cur);
+ argot_list_free(acc->mem);
free(acc);
}
}
void
-grecs_txtacc_grow(struct grecs_txtacc *acc, const char *buf, size_t size)
+argot_txtacc_grow(struct argot_txtacc *acc, const char *buf, size_t size)
{
while (size) {
- struct grecs_txtacc_entry *ent = grecs_txtacc_cur_entry(acc);
- size_t rest = grecs_txtacc_entry_freesize(ent);
+ struct argot_txtacc_entry *ent = argot_txtacc_cur_entry(acc);
+ size_t rest = argot_txtacc_entry_freesize(ent);
if (rest > size)
rest = size;
- grecs_txtacc_entry_append(ent, buf, rest);
+ argot_txtacc_entry_append(ent, buf, rest);
buf += rest;
size -= rest;
}
}
void
-grecs_txtacc_grow_string(struct grecs_txtacc *acc, const char *buf)
+argot_txtacc_grow_string(struct argot_txtacc *acc, const char *buf)
{
- grecs_txtacc_grow(acc, buf, strlen(buf));
+ argot_txtacc_grow(acc, buf, strlen(buf));
}
void
-grecs_txtacc_grow_string_escape(struct grecs_txtacc *acc, const char *buf)
+argot_txtacc_grow_string_escape(struct argot_txtacc *acc, const char *buf)
{
for (; *buf; buf++) {
if (strchr(" \t\n\"\'\\", *buf))
- grecs_txtacc_grow_char(acc, '\\');
- grecs_txtacc_grow_char(acc, *buf);
+ argot_txtacc_grow_char(acc, '\\');
+ argot_txtacc_grow_char(acc, *buf);
}
}
char *
-grecs_txtacc_finish(struct grecs_txtacc *acc, int steal)
+argot_txtacc_finish(struct argot_txtacc *acc, int steal)
{
- struct grecs_list_entry *ep;
- struct grecs_txtacc_entry *txtent;
+ struct argot_list_entry *ep;
+ struct argot_txtacc_entry *txtent;
size_t size;
char *p;
- switch (grecs_list_size(acc->cur)) {
+ switch (argot_list_size(acc->cur)) {
case 0:
return NULL;
case 1:
txtent = acc->cur->head->data;
acc->cur->head->data = NULL;
- grecs_txtacc_entry_tailor(txtent);
- grecs_list_append(acc->mem, txtent);
+ argot_txtacc_entry_tailor(txtent);
+ argot_list_append(acc->mem, txtent);
break;
default:
@@ -169,38 +169,38 @@ grecs_txtacc_finish(struct grecs_txtacc *acc, int steal)
size += txtent->len;
}
- txtent = grecs_txtacc_alloc_entry(acc->mem, size);
+ txtent = argot_txtacc_alloc_entry(acc->mem, size);
for (ep = acc->cur->head; ep; ep = ep->next) {
- struct grecs_txtacc_entry *tp = ep->data;
- grecs_txtacc_entry_append(txtent, tp->buf, tp->len);
+ struct argot_txtacc_entry *tp = ep->data;
+ argot_txtacc_entry_append(txtent, tp->buf, tp->len);
}
}
- grecs_list_clear(acc->cur);
+ argot_list_clear(acc->cur);
p = txtent->buf;
if (steal) {
- grecs_list_remove_tail(acc->mem);
+ argot_list_remove_tail(acc->mem);
free(txtent);
}
return p;
}
void
-grecs_txtacc_free_string(struct grecs_txtacc *acc, char *str)
+argot_txtacc_free_string(struct argot_txtacc *acc, char *str)
{
- struct grecs_list_entry *ep;
+ struct argot_list_entry *ep;
for (ep = acc->mem->head; ep; ep = ep->next) {
- struct grecs_txtacc_entry *tp = ep->data;
+ struct argot_txtacc_entry *tp = ep->data;
if (tp->buf == str) {
- grecs_list_remove_entry(acc->mem, ep);
- grecs_txtacc_entry_free(tp);
+ argot_list_remove_entry(acc->mem, ep);
+ argot_txtacc_entry_free(tp);
return;
}
}
}
void
-grecs_txtacc_clear(struct grecs_txtacc *acc)
+argot_txtacc_clear(struct argot_txtacc *acc)
{
- grecs_list_clear(acc->cur);
+ argot_list_clear(acc->cur);
}

Return to:

Send suggestions and report system problems to the System administrator.