Expand description
The Backend seam: the single storage abstraction higher-level code
(Transaction, Store, Database, Instance) operates through, with no
branching on local vs remote.
LocalBackend wraps a concrete in-process storage engine
(BackendImpl); RemoteBackend wraps a
RemoteConnection and
translates each method to a wire RPC. The trait is the intersection of
what both can honor with the same meaning — storage primitives that have no
authorisable remote shape (secrets, verification-status mutation, raw tree
dumps, scope-keyed cache) are deliberately not on the trait. They live
on the concrete local engine, reached only where one exists via
Backend::local_engine.
Structs§
- Local
Backend - A
Backendbacked by a localBackendImpl(e.g.InMemory, SQLx). - Remote
Backend - A
Backendthat translates every storage operation to a wire RPC over a sharedRemoteConnection.
Traits§
- Backend
- The storage operations
Transaction/Store/Database/Instanceperform, independent of whether storage is in-process or served by a daemon.