Releases: rmettler/cpp_delegates
Releases · rmettler/cpp_delegates
Version 1.1
- Added noexcept specifiers to all comparison operators. Thank you @AndreasSchaetti.
Version 1.0
The project is now considered complete. No further work will be done, until requested otherwise.
Please open an issue on GitLab if you miss a feature or found a bug.
Changes since v0.1:
- Changes to the delegate source code:
- complete overhaul of internal code while keeping the interface compatible with versions since v0.1
- added the possibility to directly assign function objects to delegates, e.g.
rome::delegate<bool(int)> = [](int i){ return i>0; };
- fixed that creating a delegate from a small buffer optimizable function object was falsely set
noexcept
if the function object was copied and copying is notnoexcept
- fixed compiler generated, hidden exception checks in the delegate's destructors because the internally used functions were incorrectly not set
noexcept
- improved compile error messages, especially if function objects of incompatible signature are assigned
- minimized amount of code generated through templates
- made the library single header (merged headers)
- Changes to the tests:
- added CMake to build and run the tests (minimum required version is 3.20)
- improved consistency, readability and performance of unit tests and added some missing checks
- added tests for expected compile errors
- added tests of the provided examples
- added code coverage report for unit test runs (LLVM only)
- added address sanitizer and undefined behavior sanitizer analysis to unit test runs (LLVM only)
- added clang-tidy static analysis
- added additional Clang and GCC toolchains for C++14 and C++23 to CI test runs
- improved documentation