Write key + pointer fields into a data slot (does NOT set STATUS).
(self, offset, key_bytes, heap_offset, length, mtime_ns)
| 963 | return heap_offset, length, mtime_ns |
| 964 | |
| 965 | def _write_slot(self, offset, key_bytes, heap_offset, length, mtime_ns): |
| 966 | """Write key + pointer fields into a data slot (does NOT set STATUS).""" |
| 967 | key_field = key_bytes[: self.key_size].ljust(self.key_size, b"\x00") |
| 968 | self._mm[offset + self._key_off : offset + self._key_off + self.key_size] = ( |
| 969 | key_field |
| 970 | ) |
| 971 | base = offset + self._offset_off |
| 972 | struct.pack_into(_OFFSET_FMT, self._mm, base, heap_offset) |
| 973 | struct.pack_into(_LENGTH_FMT, self._mm, base + _OFFSET_SIZE, length) |
| 974 | struct.pack_into( |
| 975 | _MTIME_FMT, self._mm, base + _OFFSET_SIZE + _LENGTH_SIZE, mtime_ns |
| 976 | ) |
| 977 | |
| 978 | # ------------------------------------------------------------------ |
| 979 | # Hash / slot probe (data slots 1 … size-1) |