summaryrefslogtreecommitdiff
path: root/qstd/str.c
diff options
context:
space:
mode:
Diffstat (limited to 'qstd/str.c')
-rw-r--r--qstd/str.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/qstd/str.c b/qstd/str.c
index a1c1aa1..b6b0eb7 100644
--- a/qstd/str.c
+++ b/qstd/str.c
@@ -9,3 +9,12 @@ uint64_t fnv1a64(uint8_t* buf, size_t size) {
}
return hash;
}
+
+uint32_t hash_string(const char* s) {
+ uint32_t h = 2166136261u;
+ for (; *s; s++) {
+ h ^= *(uint8_t*)s;
+ h *= 16777619;
+ }
+ return h;
+}