Expand description
Backend trait + compile-time registration.
The Store is itself a Confium plugin, but the backends it ships with are registered at compile time inside this crate. This keeps the keystore’s own extensibility story separate from the Engine’s plugin registry: the Engine loads the keystore plugin; the keystore in turn dispatches to one of its registered backends.
Adding a new in-tree backend is open/closed-compliant: create a new
module under backends/, implement StoreBackend, and call
register_backend!. No edit to this file
is required.
Structs§
- Registered
Backend - Wrapper around
&'static dyn StoreBackendso a backend can be registered withinventoryand discovered at link time.
Enums§
- Compartment
- Which compartment an operation targets.
Traits§
- Store
Backend - A backend factory: knows how to open a connection to a keystore.
- Store
Instance - One open keystore connection. All mutation flows through
&mut self; reads take&selfso concurrent get/enumerate is sound when the underlying backend allows it.
Functions§
- find
- Look up a backend by wire name. Returns
crate::error::Error::UnknownBackendif no registered backend matches. - iter
- Iterate every backend registered at link time.
Type Aliases§
- Options
- Per-backend options. A thin alias over a
String → Stringmap so backends can pull path/slot/pin-style configuration without depending on the Engine’s richer options model.