From d3db14d63a03c4a313e818ba1435433dd18acba4 Mon Sep 17 00:00:00 2001 From: Sebastiano Tronto Date: Sat, 13 Jul 2024 08:19:44 +0200 Subject: Improved h48set tests --- src/solve_h48.h | 13 +++++++++++++ 1 file changed, 13 insertions(+) (limited to 'src') diff --git a/src/solve_h48.h b/src/solve_h48.h index 4bf9f78..bfcf585 100644 --- a/src/solve_h48.h +++ b/src/solve_h48.h @@ -79,6 +79,7 @@ _static void h48set_destroy(h48set_t *); _static_inline int64_t h48set_lookup(h48set_t *, int64_t); _static_inline void h48set_insert(h48set_t *, int64_t); _static_inline bool h48set_contains(h48set_t *, int64_t); +_static inline int64_t h48set_save(h48set_t *, int64_t *); _static_inline int64_t coord_h48(cube_t, const uint32_t *, uint8_t); _static_inline int64_t coord_h48_edges(cube_t, int64_t, uint8_t, uint8_t); @@ -167,6 +168,18 @@ h48set_contains(h48set_t *set, int64_t x) return i == -1; } +_static int64_t +h48set_save(h48set_t *set, int64_t *a) +{ + int64_t i, j; + + for (i = 0, j = 0; i < set->capacity; i++) + if (set->table[i] != -1) + a[j++] = set->table[i]; + + return j; +} + _static_inline int64_t coord_h48(cube_t c, const uint32_t *cocsepdata, uint8_t h) { -- cgit v1.3