Age | Commit message (Collapse) | Author | |
---|---|---|---|
2017-01-24 | Routine, Cache: generalize, reduce amount of copying in fast path | Ivan Shapovalov | |
Implement a generalized Cache<K, V>. Two variants are provided: the first one is based on std::map, using C++14-specific transparent std::less<> and generalized std::map::find() to allow searching by tuple of references. The second one is based on std::vector and O(n) lookup, but remains C++11-compliant. | |||
2016-10-22 | treewide: use C++ exceptions properly | Ivan Shapovalov | |
Since the codebase is designed around proper C++ idioms such as RAII, it makes sense to only use C++ exceptions internally instead of mixing exceptions and error codes. The exceptions are now caught at top level to preserve compatibility with the existing error code-based API. Note that we deliberately do not catch C++ runtime errors (such as `std::bad_alloc`) nor logic errors (aka failed assertions) because no actual handling can ever happen for such errors. However, in the C interface we do catch _all_ exceptions (...) and convert them into a wild-card error code. | |||
2016-06-27 | Fixes for the AppVeyor Windows build | Cedric Nugteren | |
2016-06-18 | Moved all headers into the source tree, changed headers to .hpp extension | Cedric Nugteren | |