|
Relational NT
A relational database kernel shaped around NT-style object management.
|
Contract between CursorManager / Merkle and a physical storage engine. More...
#include <IStorageBackend.h>
Public Member Functions | |
| virtual std::string | Put (std::vector< uint8_t > value)=0 |
| Stores a serialized value and returns its SHA256 hex hash. | |
| virtual std::optional< std::vector< uint8_t > > | Get (const std::string &hash)=0 |
| Retrieves bytes by their SHA256 hex hash. | |
Contract between CursorManager / Merkle and a physical storage engine.
Two primitives are sufficient:
Both are idempotent. The Merkle class stores node blobs via Put/Get and maintains insertion-order-independent relation membership on top of these two primitives.
|
pure virtual |
Retrieves bytes by their SHA256 hex hash.
Implemented in nt::InMemoryBackend, and nt::SqliteBackend.
|
pure virtual |
Stores a serialized value and returns its SHA256 hex hash.
Idempotent: storing the same bytes twice does not create a duplicate. The returned hash is the only valid key for subsequent Get calls.
Implemented in nt::InMemoryBackend, and nt::SqliteBackend.