summaryrefslogtreecommitdiff
path: root/xs.h
diff options
context:
space:
mode:
authorGravatar default2023-11-20 18:33:24 +0100
committerGravatar default2023-11-20 18:33:24 +0100
commitbc5d0d4ed09833640856ee0193a53553dbb1eb20 (patch)
treeafd97135fb606445cb8f5348ae2857cb3088dbd8 /xs.h
parentVersion 2.43 RELEASED. (diff)
downloadpenes-snac2-bc5d0d4ed09833640856ee0193a53553dbb1eb20.tar.gz
penes-snac2-bc5d0d4ed09833640856ee0193a53553dbb1eb20.tar.xz
penes-snac2-bc5d0d4ed09833640856ee0193a53553dbb1eb20.zip
Replaced encode_html_strict() with xs_html_encode().
Diffstat (limited to 'xs.h')
-rw-r--r--xs.h19
1 files changed, 18 insertions, 1 deletions
diff --git a/xs.h b/xs.h
index 63715ac..d7d9169 100644
--- a/xs.h
+++ b/xs.h
@@ -62,7 +62,8 @@ xs_str *xs_str_new(const char *str);
62xs_str *xs_str_new_sz(const char *mem, int sz); 62xs_str *xs_str_new_sz(const char *mem, int sz);
63xs_str *xs_str_wrap_i(const char *prefix, xs_str *str, const char *suffix); 63xs_str *xs_str_wrap_i(const char *prefix, xs_str *str, const char *suffix);
64#define xs_str_prepend_i(str, prefix) xs_str_wrap_i(prefix, str, NULL) 64#define xs_str_prepend_i(str, prefix) xs_str_wrap_i(prefix, str, NULL)
65#define xs_str_cat(str, suffix) xs_str_wrap_i(NULL, str, suffix) 65xs_str *_xs_str_cat(xs_str *str, const char *strs[]);
66#define xs_str_cat(str, ...) _xs_str_cat(str, (const char *[]){ __VA_ARGS__, NULL })
66xs_str *xs_replace_in(xs_str *str, const char *sfrom, const char *sto, int times); 67xs_str *xs_replace_in(xs_str *str, const char *sfrom, const char *sto, int times);
67#define xs_replace_i(str, sfrom, sto) xs_replace_in(str, sfrom, sto, XS_ALL) 68#define xs_replace_i(str, sfrom, sto) xs_replace_in(str, sfrom, sto, XS_ALL)
68#define xs_replace(str, sfrom, sto) xs_replace_in(xs_dup(str), sfrom, sto, XS_ALL) 69#define xs_replace(str, sfrom, sto) xs_replace_in(xs_dup(str), sfrom, sto, XS_ALL)
@@ -451,6 +452,22 @@ xs_str *xs_str_wrap_i(const char *prefix, xs_str *str, const char *suffix)
451} 452}
452 453
453 454
455xs_str *_xs_str_cat(xs_str *str, const char *strs[])
456/* concatenates all strings after str */
457{
458 int o = strlen(str);
459
460 while (*strs) {
461 int sz = strlen(*strs);
462 str = xs_insert_m(str, o, *strs, sz);
463 o += sz;
464 strs++;
465 }
466
467 return str;
468}
469
470
454xs_str *xs_replace_in(xs_str *str, const char *sfrom, const char *sto, int times) 471xs_str *xs_replace_in(xs_str *str, const char *sfrom, const char *sto, int times)
455/* replaces inline all sfrom with sto */ 472/* replaces inline all sfrom with sto */
456{ 473{