diff options
| author | eunhhu <[email protected]> | 2026-09-30 15:51:32 +0100 |
|---|---|---|
| committer | eunhhu <[email protected]> | 2026-09-30 15:51:32 +0100 |
| commit | e02bfc916743a0327d76144b32b6ec6381e5907f (patch) | |
| tree | faf17d43c373e322c5b55ae8adc680d09bd49b4c /core/module-save.h | |
| parent | ee21aec10726863d8e812643e1419e4b7d0f2b51 (diff) | |
| download | pure-e02bfc916743a0327d76144b32b6ec6381e5907f.tar.gz pure-e02bfc916743a0327d76144b32b6ec6381e5907f.zip | |
Let a value's 8 bytes hold a number or an integer
Before i64 (016 stage 2): a state's value, a record field's default, a
list cell's number, the interpreter's stack slot and an instruction's
constant become unions of a double and an int64_t (PureValue, anonymous
unions in PureCell, Slot and PureOp). LOAD and STORE, and a list cell
made from the stack, copy the bits; everything else reads .num as before.
No behaviour changes: every check passes as it did.
Diffstat (limited to 'core/module-save.h')
| -rw-r--r-- | core/module-save.h | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/core/module-save.h b/core/module-save.h index 9c0f74e..991c498 100644 --- a/core/module-save.h +++ b/core/module-save.h @@ -43,7 +43,7 @@ PureList *pure_runtime_list_new(uint32_t place); /* Open the stored numbers, cursors and indices, and put each stored one of the * same name and kind that still fits into values, for the states of m that * kept marks as new (-1); texts and lists are m's. */ -PureResult pure_save_open_values(PureApp *, const PureModule *m, double *values, const int *kept, +PureResult pure_save_open_values(PureApp *, const PureModule *m, PureValue *values, const int *kept, PureDraft *const *texts, PureList *const *lists); /* The stored links of a starting app (module.h, PureApp), after its runtime * lists. The sends left in the outbox of an output whose fields changed are @@ -56,7 +56,7 @@ PureResult pure_save_open_values(PureApp *, const PureModule *m, double *values, PureResult pure_save_open_links(PureApp *, const PureModule *m, bool *heard_moved, bool *sent_moved); /* Publish the documents and every state changed since the last save * (values are the states' numbers); revisions are the documents'. */ -PureResult pure_save_commit(PureApp *, const double *values, void *const *documents, size_t document_count, +PureResult pure_save_commit(PureApp *, const PureValue *values, void *const *documents, size_t document_count, int64_t *revisions); /* A message's fields laid out as load lays them: in order, the fixed ones |
