diff options
| author | eunhhu <[email protected]> | 2026-09-28 11:12:37 +0100 |
|---|---|---|
| committer | eunhhu <[email protected]> | 2026-09-28 11:12:37 +0100 |
| commit | 3c8cc4e887c861c392223a54fd5be2b49db29874 (patch) | |
| tree | fccb4588cf17b2adaa0fa5ff9e20e716c8489ac7 /core/module-list.h | |
| parent | 4c4c73c30a0524cf893d813fda215199150a6934 (diff) | |
| download | pure-3c8cc4e887c861c392223a54fd5be2b49db29874.tar.gz pure-3c8cc4e887c861c392223a54fd5be2b49db29874.zip | |
Write list images a chunk at a time, and keep the log within the lists' size
Diffstat (limited to 'core/module-list.h')
| -rw-r--r-- | core/module-list.h | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/core/module-list.h b/core/module-list.h index ec7ee10..faacf4b 100644 --- a/core/module-list.h +++ b/core/module-list.h @@ -96,6 +96,10 @@ PureResult pure_list_sorted(const PureList *, unsigned field, PureList **out, si * pure_list_encode writes them to out. */ size_t pure_list_size(const PureList *); void pure_list_encode(const PureList *, unsigned char *out); +/* The items from position *at on, as many whole ones as capacity holds, + * into out: their bytes (0 at the end, or with *needed the bytes of the one + * item that does not fit), *at moved past them. */ +size_t pure_list_encode_part(const PureList *, size_t *at, unsigned char *out, size_t capacity, size_t *needed); /* Append the items stored in bytes; each field is checked. */ PureResult pure_list_read(PureList *, const unsigned char *bytes, size_t size); /* A stored list journals its changes (from pure_list_journal(list, true) |
