C++14 implementation of C++17
std::variant
MPark.Variant provides an implementation of C++17 std::variant as a C++14 library.
The implementation is based on my implementation of std::variant for libc++
and is continously tested against libc++'s std::variant test suite.
Refer to std::variant - cppreference.com for the std::variant
components of MPark.Variant.
-
MPARK_VARIANT_INCLUDE_TESTS:STRINGSemicolon-separated list of tests to build. Possible values are
mparkandlibc++.This is
"mpark"by default if the library being built directly, and""by default if it is being built indirectly viaadd_subdirectory.NOTE: The libc++ tests are built with
-std=c++1z.
This library requires a standard conformant C++14 compiler. The following compilers are continously tested:
g++-5.4g++-6.2clang++-3.5clang++-3.6clang++-3.7clang++-3.8clang++-3.9apple-clang-6apple-clang-7apple-clang-8
NOTE: Enabling libc++'s std::variant tests require -std=c++1z support.
Refer to test/README.md.