Martchus
71b613bc7c
Avoid error when rebuilding database
2024-03-09 12:11:52 +01:00
Martchus
3a2160ee67
Improve tests for typed DBI
2024-03-08 19:15:16 +01:00
Martchus
bda69c292d
Avoid deletion in "in place" modification function
...
With the previous fix for `put()` this is no longer required.
2024-03-08 19:13:27 +01:00
Martchus
f7cdacd30d
Fix duplicate/old rows on indexes when overriding a row by ID
2024-03-08 19:04:58 +01:00
Martchus
8e6fe671f0
Avoid CMake deprecation warning by bumping version
2024-03-08 19:01:44 +01:00
Martchus
be2235103f
Apply change of `global.h` template
2024-02-27 00:50:59 +01:00
Marius Kittler
d8ca70bca1
Fix constness of `MDBOutVal::get()`
...
The member function itself needs to be const, not the return value.
2023-12-16 21:19:24 +01:00
Marius Kittler
02c64c8897
Fix typo in docstring
2023-11-08 13:01:05 +01:00
Martchus
fa47c4848c
Fix assert message in allocatePointer()
2023-09-30 22:04:41 +02:00
Martchus
b69693bf58
Apply clang-format
2023-01-23 22:41:30 +01:00
Marius Kittler
f015a9444d
Support version 3 of Catch2
2023-01-22 23:07:15 +01:00
Martchus
27252986a8
Avoid copying shared transaction pointer
2022-11-01 15:07:02 +01:00
Marius Kittler
2656ead556
Apply clang-format
2022-06-28 16:08:45 +02:00
Martchus
9f17cdd3eb
Avoid deserializing object on deletion if there are no indexes
2022-05-31 21:17:37 +02:00
Martchus
9a9bed0f46
Allow specifying `ElementType` on index-ed `get` function as well
2022-05-28 18:28:31 +02:00
Martchus
827bd843b3
Add remark that `index_on_function` is likely not useful as-is
2022-05-26 23:10:23 +02:00
Martchus
06909a24c4
Allow index on member of base class
2022-05-26 23:09:46 +02:00
Martchus
08f28a1706
Allow overriding type in certain typed operations
...
This makes mostly sense for read-only operations to avoid having to
deserialize the whole object when deserializing a truncated version of it
would suffice.
2022-05-19 21:51:24 +02:00
Martchus
2f5eb32a33
Fix missing include of functional
2022-05-12 20:30:43 +02:00
Martchus
8e5ea02989
Delete indexes as well when deleting via iterator
2022-04-20 21:40:11 +02:00
Martchus
1d389239eb
Remove useless check for index
2022-04-19 00:19:56 +02:00
Martchus
f47f8a52b0
Fix using std::unique_ptr with iterator
2022-04-18 23:10:21 +02:00
Martchus
389d662f3b
Apply cmake-format
2022-04-15 19:18:56 +02:00
Martchus
bb985870f0
Avoid overflow when running out of IDs
...
* Throw an exception instead
* Add function that allows re-using lower IDs instead
* Move functions to query IDs to read-only operations
2022-04-15 19:18:35 +02:00
Martchus
7689f0ebd6
Add stalebot config
2022-04-12 01:07:00 +02:00
Martchus
95ff695381
Add helper to rebuild typed database
2022-03-07 23:31:47 +01:00
Martchus
62fe316637
Pass `func` as `const &` in `modify` function
2022-03-07 23:31:40 +01:00
Martchus
4580d7242a
Fix typos
2022-03-01 00:42:50 +01:00
Martchus
f6fd78155b
Add `rbegin()` and `lower_bound()` for main DB
2022-02-25 00:29:17 +01:00
Martchus
bf6dbf0e42
Improve comments
2022-02-21 23:46:32 +01:00
Martchus
6c21fe7cb1
Use type alias for ID type
2022-02-21 22:57:15 +01:00
Martchus
b87dd49bba
Allow iterating over index
...
The use-case is checking the index-value first (e.g. just a simple string)
to decide whether the object is actually instead of deserializing the
whole object (e.g. a huge object which is quite costly to deserialize)
directly.
2022-02-19 00:10:17 +01:00
Martchus
64ba75ac48
Add serialization shortcuts for std::string and std::uintX_t types
2022-02-19 00:06:13 +01:00
Martchus
b302cdfabe
Allow using smart pointers in iterator
2022-02-18 19:20:14 +01:00
Martchus
1517bdce29
Fix case of having no index at all
2022-02-10 22:37:32 +01:00
Martchus
fbcdc05e9c
Export use of lmdb library as we include and use it in public headers
2022-02-05 21:50:00 +01:00
Martchus
28a3aa7345
Add default c'tor and move assignment to transactions
2022-02-01 22:02:25 +01:00
Martchus
5eae3f2c98
Remove unused includes
2022-02-01 20:26:46 +01:00
Martchus
213dfb823d
Use `std::`-prefix for a few more occurrences in standard types for consistency
2022-02-01 20:26:46 +01:00
Martchus
1748fe674c
Use `std::`-prefix for all std-types used in headers
2022-02-01 20:26:46 +01:00
Martchus
011bfa9ab9
Use `std::size_t` consistently for index (of index)
2022-02-01 20:26:46 +01:00
Martchus
65d8653c77
Get rid of macros and boilerplate code for handling indexes
...
and by the way support more than 4 indexes at the same time
2022-02-01 20:26:46 +01:00
Martchus
b75ff2602b
Ensure all tests/examples pass without args and don't interfere with each other
2022-01-30 22:27:05 +01:00
Martchus
bc5df35b67
Fix include for reflective-rapidjson
2022-01-30 22:09:34 +01:00
Martchus
ec4a44e4de
Format tests and examples as well
2022-01-30 21:32:08 +01:00
Martchus
1e393bf3fe
Remove config for Travis CI
...
It is outdated and using an unsupported Ubuntu distribution.
2022-01-30 21:28:21 +01:00
Martchus
ff340d0793
Remove "lmdb-various.cc"
...
Is it is not clear what it is about and contains lots of disabled code.
2022-01-30 21:26:26 +01:00
Martchus
d27b737234
Move remaining examples from top-level to example folder and build-system
2022-01-30 21:25:05 +01:00
Martchus
2e7d278c9b
Apply uniform formatting via clang-format
2022-01-30 21:14:43 +01:00
Martchus
ff1fc3ebd4
Remove Makefile in favor of CMake build script
2022-01-30 01:27:54 +01:00