From 5df950e0b35207930c645e8ce0c3e9ed1c9fcea5 Mon Sep 17 00:00:00 2001 From: dec05eba Date: Sat, 25 Jan 2020 09:54:37 +0100 Subject: string view > string ref --- src/value.c | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) (limited to 'src/value.c') diff --git a/src/value.c b/src/value.c index c08048a..1a76880 100644 --- a/src/value.c +++ b/src/value.c @@ -18,9 +18,9 @@ uint64_t tsl_value_hash(const TslValue *key) { case TSL_TYPE_NUMBER: return *(uint64_t*)&key->data.number; case TSL_TYPE_STRING: - return hash_range(key->data.string->data, key->data.string->size); - case TSL_TYPE_STRING_VIEW: - return hash_range((uint8_t*)key->data.string_view.data, key->data.string_view.size); + return hash_range((uint8_t*)key->data.string->data, key->data.string->size); + case TSL_TYPE_STRING_REF: + return hash_range((uint8_t*)key->data.string_ref.data, key->data.string_ref.size); case TSL_TYPE_BOOL: return key->data.boolean; case TSL_TYPE_LIST: @@ -40,18 +40,18 @@ int tsl_value_equals(const TslValue *lhs, const TslValue *rhs) { if(lhs->type == TSL_TYPE_STRING) { return lhs->data.string->size == rhs->data.string->size && memcmp(lhs->data.string->data, rhs->data.string->data, lhs->data.string->size) == 0; - } else if(lhs->type == TSL_TYPE_STRING_VIEW) { - return lhs->data.string_view.size == rhs->data.string_view.size - && memcmp(lhs->data.string_view.data, rhs->data.string_view.data, lhs->data.string_view.size) == 0; + } else if(lhs->type == TSL_TYPE_STRING_REF) { + return lhs->data.string_ref.size == rhs->data.string_ref.size + && memcmp(lhs->data.string_ref.data, rhs->data.string_ref.data, lhs->data.string_ref.size) == 0; } else { return *(uint64_t*)&lhs->data == *(uint64_t*)&rhs->data; } - } else if(lhs->type == TSL_TYPE_STRING && rhs->type == TSL_TYPE_STRING_VIEW) { - return lhs->data.string->size == rhs->data.string_view.size - && memcmp(lhs->data.string->data, rhs->data.string_view.data, lhs->data.string->size) == 0; - } else if(lhs->type == TSL_TYPE_STRING_VIEW && rhs->type == TSL_TYPE_STRING) { - return lhs->data.string_view.size == rhs->data.string->size - && memcmp(lhs->data.string_view.data, rhs->data.string->data, lhs->data.string_view.size) == 0; + } else if(lhs->type == TSL_TYPE_STRING && rhs->type == TSL_TYPE_STRING_REF) { + return lhs->data.string->size == rhs->data.string_ref.size + && memcmp(lhs->data.string->data, rhs->data.string_ref.data, lhs->data.string->size) == 0; + } else if(lhs->type == TSL_TYPE_STRING_REF && rhs->type == TSL_TYPE_STRING) { + return lhs->data.string_ref.size == rhs->data.string->size + && memcmp(lhs->data.string_ref.data, rhs->data.string->data, lhs->data.string_ref.size) == 0; } else { return 0; } -- cgit v1.2.3