Splinter API Reference Index
Every public function declared in splinter.h, grouped by purpose. See the
AI Primer at the top of splinter.h for the seqlock invariant, errno model, and
risk topology that govern all of these.
Store Lifecycle & Geometry
- splinter_create — create and initialize a new store with fixed geometry.
- splinter_open — open an existing store by name or path.
- splinter_open_numa — open and pin a store to a NUMA node.
- splinter_open_or_create — open, or create if missing.
- splinter_create_or_open — create, or open if it already exists.
- splinter_close — close the store and unmap shared memory.
- splinter_get_header_snapshot — copy the header (geometry/metadata) for safe inspection.
Key/Value Operations
- splinter_set — set or update a key's value.
- splinter_get — retrieve a key's value (honors
val_len). - splinter_unset — delete a key and clear its slot.
- splinter_append — append to an existing value in place.
- splinter_list — list all keys in the store.
- splinter_get_slot_snapshot — copy a slot's metadata for inspection.
- splinter_get_raw_ptr — direct (unsafe) pointer into shared memory.
Epoch & Consistency
- splinter_get_epoch — read a slot's seqlock epoch.
- splinter_bump_slot — advance a slot's epoch without other work.
- splinter_poll — wait for a key's value to change.
- splinter_retrain_slot — scrub vectors and rewind the epoch to republish.
Value Hygiene (Mop)
- splinter_set_mop — set the auto-scrub mode (off/hybrid/full boil).
- splinter_get_mop — read the current mop mode.
- splinter_purge — sweep stale bytes past each value's length.
Slot Typing, Time & System Scope
- splinter_set_named_type — declare a slot's named type.
- splinter_now — read the 64-bit cycle counter.
- splinter_set_slot_time — set a slot's ctime/atime.
- splinter_set_as_system — promote a key to system usage.
Atomic Integer Operations
- splinter_integer_op — in-place bitwise/arithmetic ops on
BIGUINTkeys.
Embeddings
- splinter_set_embedding — set a key's embedding vector.
- splinter_get_embedding — retrieve a key's embedding vector.
Bloom Labels & Semantic Routing
- splinter_set_label — OR a label mask into a slot's Bloom filter.
- splinter_unset_label — remove a label mask from a slot.
- splinter_enumerate_matches — visit slots matching a Bloom mask.
Ordered (Tandem) Sets
- splinter_client_set_tandem — write multiple ordered values for a base key.
- splinter_client_unset_tandem — delete a base key and its orders.
Configuration & User Flags
- splinter_config_set — set bus config flags.
- splinter_config_clear — clear bus config flags.
- splinter_config_test — test bus config flags.
- splinter_config_snapshot — snapshot the bus config byte.
- splinter_slot_usr_set — set a slot's user flags.
- splinter_slot_usr_clear — clear a slot's user flags.
- splinter_slot_usr_test — test a slot's user flags.
- splinter_slot_usr_snapshot — snapshot a slot's user flags.
Signals & Pub/Sub
- splinter_watch_register — subscribe a key to a signal group.
- splinter_watch_unregister — unsubscribe a key from a signal group.
- splinter_watch_label_register — map a Bloom label to a signal group.
- splinter_pulse_watchers — pulse the Signal Arena for a slot.
- splinter_pulse_keygroup — pulse a key's signal group.
- splinter_get_signal_count — read a signal group's pulse count.
Event Bus (eventfd)
- splinter_event_bus_init — arm the owner's eventfd (once per store).
- splinter_event_bus_open — open a process-local fd to the eventfd.
- splinter_event_bus_wait — block until the global epoch changes.
- splinter_event_bus_close — close a bus fd.
- splinter_event_bus_get_dirty — copy the dirty-slot bitmask.
Logic Shard Election & Cooperative madvise
- splinter_shard_claim — claim a bid slot and declare memory intent.
- splinter_shard_claim_ex — claim with explicit pid/claimed_at.
- splinter_shard_rebid — refresh an existing claim's window.
- splinter_shard_release — voluntarily release a bid slot.
- splinter_shard_election — run the read-only election scan.
- splinter_shard_is_sovereign — check if a shard is the sovereign.
- splinter_shard_table_snapshot — snapshot the bid table for audit.
- splinter_madvise — cooperative
posix_madvise()via the election.