35 #define ELECTRONEUM_CURSOR(name) \ 36 struct close_ ## name : ::lmdb::close_cursor {}; \ 37 using name = std::unique_ptr< MDB_cursor, close_ ## name >; 77 mdb_cursor_close(ptr);
85 MDB_cursor* cur =
nullptr;
87 return std::unique_ptr<MDB_cursor, D>{cur};
93 using read_txn = std::unique_ptr<MDB_txn, release_read_txn>;
94 using write_txn = std::unique_ptr<MDB_txn, abort_write_txn>;
expect< std::unique_ptr< MDB_cursor, D > > open_cursor(MDB_txn &txn, MDB_dbi tbl) noexcept
Definition: transaction.h:83
void operator()(MDB_txn *ptr) const noexcept
Definition: transaction.h:66
std::unique_ptr< MDB_txn, abort_txn > suspended_txn
Definition: transaction.h:92
std::unique_ptr< MDB_txn, abort_write_txn > write_txn
Definition: transaction.h:94
std::unique_ptr< MDB_txn, release_read_txn > read_txn
Definition: transaction.h:93
Definition: transaction.h:64
Definition: transaction.h:41
Definition: transaction.h:54
void operator()(MDB_txn *ptr) const noexcept
Definition: database.cpp:63
void operator()(MDB_cursor *ptr) const noexcept
Definition: transaction.h:74
Definition: database.cpp:45
void operator()(MDB_txn *ptr) const noexcept
Definition: transaction.h:43
#define ELECTRONEUM_LMDB_CHECK(...)
Executes a LMDB command, and returns errors via lmdb::error enum.
Definition: error.h:33
Definition: transaction.h:72