oxen-core/src/blockchain_db
Jason Rhinelander b7dd5e8911 Target macos 10.12
When targetting macos <10.14 macos won't allow use of anything from
C++17 that throws, such as:
- std::get on a variant
- std::visit
- std::optional::value()
- std::any_cast

This avoids all of these.

For std::get, we either replace with std::get_if (where appropriate), or
else use a `var::get` implementation of std::get added to lokimq (also
updated here).  (This `var` namespace is just an `std` alias everywhere
*except* old target macos).

For std::visit, likewise lokimq adds an var::visit implementation for
old macos that we use.

std::optional::value() uses weren't useful anyway as everywhere it calls
them we've already checked that the option has a value, in which case we
can use `*opt` (which doesn't check for contents and throw).

std::any just has to be avoided as far as I can tell, but the one place
we used it is only ever a block, so I just replaced it with a `const
block*`.
2020-10-18 11:18:08 -03:00
..
lmdb Target macos 10.12 2020-10-18 11:18:08 -03:00
blockchain_db.cpp Target macos 10.12 2020-10-18 11:18:08 -03:00
blockchain_db.h rescan_diffic: Simplify params, update cli arg in blockchain_import 2020-09-30 11:17:12 +10:00
CMakeLists.txt cmake modernization 2020-03-06 00:36:57 -04:00
locked_txn.h Merge commit 'c038cc8b791ffb4bcd5f13e47de1ea98815059fe' into MergeUpstream3 2020-05-28 12:23:19 +10:00
testdb.h Pulse: Handle alternative block reorg with Pulse blocks 2020-09-18 13:50:05 -03:00