This repository has moved to it's own organization https://github.com/cpp-pre
C++11 header-only boost companion library baked with love.
- [to_json](@ref pre::json::to_json) and [from_json](@ref pre::json::from_json) functions for any custom or standard types & aggregate.
- [Lambda & Function instrospector traits](@ref pre::type_traits::function_traits)
- A [mockup serial port](@ref boost::asio::mockup_serial_port_service) working with boost::asio
- safe cast from enums underlying_type in the enum type.
- std::chrono::duration & boost::chrono::duration suffixes for ms, sec... until C++14 is mainstream.
- bytes & bits manipulation utilities
This C++11 header-only library provides utilities that we miss in Boost for the moment when writing productive code.
We author it in our free time to help our personal project and companies to centralize useful reusable code, that we polish until we can propose it to the Boost Libraries.
We always deprecate our own implementation when the Boost community finally accepts them, because we are just a backward-compatible staging-library for small Boost utilities.
That's why we named it pre, like pre::boost.
The library is header only, but has dependencies on :
- Boost 1.60.0
- nlohmann-json
Simply drop in your CMakeLists.txt the following :
hunter_add_package(lib-cpp-pre)
find_package(lib-cpp-pre 1.3.7 REQUIRED)
include_directories(AFTER ${LIB_CPP_PRE_INCLUDE_DIRS})
You can install these dependencies yourself, and then install the library this way :
mkdir build/
cd build/
cmake .. -DHUNTER_ENABLED=OFF && make install
- BOOST_FUSION_ADAPT_STRUCT auto type deduction and we maitain it there.
Licensed under the MIT License, see LICENSE.
- Damien Buhl (alias daminetreg)
- Patrick Wieder (alias linkineo) for his reviews
- Daniel Friedrich (alias dan-42) : Lambda & Function instrospector traits