feat(lander): PoC index pages

This commit is contained in:
Jef Roosens 2024-03-09 21:01:14 +01:00
parent 222b277eef
commit e91631dd42
Signed by: Jef Roosens
GPG key ID: B75D4F293C7052DB
10 changed files with 196 additions and 24 deletions

View file

@ -316,3 +316,7 @@ lsm_error lsm_entry_data_open_read(lsm_entry_handle *handle) {
return lsm_error_ok;
}
void lsm_entry_key(const lsm_str **out, lsm_entry_handle *handle) {
*out = handle->wrapper->entry->key;
}

View file

@ -215,15 +215,15 @@ bool lsm_str_eq(const lsm_str *s1, const lsm_str *s2) {
return memcmp(lsm_str_ptr(s1), lsm_str_ptr(s2), s1->len) == 0;
}
lsm_error lsm_str_append(lsm_str *s, lsm_str *s2) {
if (s2->len == 0) {
lsm_error lsm_str_append_c(lsm_str *s, const char *c_str, uint64_t len) {
if (len == 0) {
return lsm_error_ok;
}
uint64_t new_len = s->len + s2->len;
uint64_t new_len = s->len + len;
if (new_len <= 8) {
memcpy(&s->data.val[s->len], s2->data.val, s2->len);
memcpy(&s->data.val[s->len], c_str, len);
} else {
char *buf;
@ -243,11 +243,15 @@ lsm_error lsm_str_append(lsm_str *s, lsm_str *s2) {
}
}
memcpy(&buf[s->len], lsm_str_ptr(s2), s2->len);
memcpy(&buf[s->len], c_str, len);
s->data.ptr = buf;
}
s->len += s2->len;
s->len += len;
return lsm_error_ok;
}
lsm_error lsm_str_append(lsm_str *s, const lsm_str *s2) {
return lsm_str_append_c(s, lsm_str_ptr(s2), s2->len);
}