fast error_code access from uerror

This commit is contained in:
BlackMATov
2023-02-18 19:48:47 +07:00
parent 46ff71ea79
commit 793ca9f17d
4 changed files with 11 additions and 1 deletions

View File

@@ -3,7 +3,7 @@ add_library(${PROJECT_NAME}::setup_targets ALIAS ${PROJECT_NAME}.setup_targets)
target_compile_options(${PROJECT_NAME}.setup_targets INTERFACE
$<$<CXX_COMPILER_ID:MSVC>:
/WX /W4>
/WX /W4 /bigobj>
$<$<CXX_COMPILER_ID:GNU>:
-Werror -Wall -Wextra -Wpedantic>
$<$<OR:$<CXX_COMPILER_ID:Clang>,$<CXX_COMPILER_ID:AppleClang>>:

View File

@@ -28,24 +28,29 @@ TEST_CASE("meta/meta_utilities/uerror") {
SUBCASE("ctors") {
{
meta::uerror err{};
CHECK(*err == meta::error_code::no_error);
CHECK(err.get_error() == meta::error_code::no_error);
}
{
meta::uerror err{meta::error_code::bad_argument_cast};
CHECK(*err == meta::error_code::bad_argument_cast);
CHECK(err.get_error() == meta::error_code::bad_argument_cast);
}
{
meta::uerror err{meta::error_code::bad_instance_cast};
CHECK(*err == meta::error_code::bad_instance_cast);
CHECK(err.get_error() == meta::error_code::bad_instance_cast);
}
{
meta::uerror err1{meta::error_code::bad_argument_cast};
meta::uerror err2{err1};
CHECK(*err2 == meta::error_code::bad_argument_cast);
CHECK(err2.get_error() == meta::error_code::bad_argument_cast);
}
{
meta::uerror err1{meta::error_code::bad_argument_cast};
meta::uerror err2{std::move(err1)};
CHECK(*err2 == meta::error_code::bad_argument_cast);
CHECK(err2.get_error() == meta::error_code::bad_argument_cast);
}
}