summaryrefslogtreecommitdiff
path: root/src/dged/s8.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/dged/s8.c')
-rw-r--r--src/dged/s8.c18
1 files changed, 18 insertions, 0 deletions
diff --git a/src/dged/s8.c b/src/dged/s8.c
index 0566fde..c4544b9 100644
--- a/src/dged/s8.c
+++ b/src/dged/s8.c
@@ -23,3 +23,21 @@ char *s8tocstr(struct s8 s) {
cstr[s.l] = '\0';
return cstr;
}
+
+bool s8startswith(struct s8 s, struct s8 prefix) {
+ if (prefix.l > s.l) {
+ return false;
+ }
+
+ return memcmp(s.s, prefix.s, prefix.l) == 0;
+}
+
+struct s8 s8dup(struct s8 s) {
+ struct s8 new = {0};
+ new.l = s.l;
+
+ new.s = (char *)malloc(s.l);
+ memcpy(new.s, s.s, s.l);
+
+ return new;
+}