Skip to main content

Crate honker_ext

Crate honker_ext 

Source
Expand description

honker SQLite loadable extension.

Thin wrapper around honker-core. Registers:

  • notify() SQL scalar function + _honker_notifications table — via honker_core::attach_notify.

  • Every honker_* queue / lock / rate-limit / scheduler / result function — via honker_core::attach_honker_functions.

    .load ./libhonker_ext SELECT honker_bootstrap(); INSERT INTO _honker_live (queue, payload) VALUES (‘emails’, ‘{“to”: “alice”}’); SELECT honker_claim_batch(‘emails’, ‘worker-1’, 32, 300); SELECT honker_ack_batch(‘[1,2,3]’, ‘worker-1’); SELECT notify(‘orders’, ‘{“id”: 42}’);

Actual SQL implementations live in honker_core::honker_ops so the Python (PyO3) and Node (napi-rs) bindings can register the same functions on their own connections without loading this .dylib. One source of truth for the SQL.

Structs§

HonkerWatcherHandle

Functions§

honker_watcher_close
Close a watcher opened by honker_watcher_open.
honker_watcher_open
Open a core-backed update watcher over db_path.
honker_watcher_wait
Wait for the next database update.
sqlite3_honkerext_init
SQLite entry point. Name must match sqlite3_<extname>_init; SQLite derives <extname> from the filename — stripping the lib prefix and any non-alphabetic characters: libhonker_ext.dylib -> honker_ext -> honkerext -> sqlite3_honkerext_init.