diff --git a/.gitmodules b/.gitmodules index e08cd3c..2d624cc 100644 --- a/.gitmodules +++ b/.gitmodules @@ -4,3 +4,6 @@ [submodule "dep/function2/function2"] path = dep/function2/function2 url = https://github.com/Naios/function2.git +[submodule "dep/cxx_function/cxx_function"] + path = dep/cxx_function/cxx_function + url = https://github.com/potswa/cxx_function.git diff --git a/dep/CMakeLists.txt b/dep/CMakeLists.txt index d1aac53..f6df0d2 100644 --- a/dep/CMakeLists.txt +++ b/dep/CMakeLists.txt @@ -2,6 +2,10 @@ if(CONTINUABLE_UNIT_TESTS AND NOT TARGET gtest) add_subdirectory(googletest) endif() +if(CONTINUABLE_UNIT_TESTS AND NOT TARGET cxx_function) + add_subdirectory(cxx_function) +endif() + if(NOT TARGET function2) add_subdirectory(function2) endif() diff --git a/dep/cxx_function/CMakeLists.txt b/dep/cxx_function/CMakeLists.txt new file mode 100644 index 0000000..bca663e --- /dev/null +++ b/dep/cxx_function/CMakeLists.txt @@ -0,0 +1,5 @@ +add_library(cxx_function INTERFACE) + +target_include_directories(cxx_function + INTERFACE + "${CMAKE_CURRENT_LIST_DIR}") diff --git a/dep/cxx_function/cxx_function b/dep/cxx_function/cxx_function new file mode 160000 index 0000000..8220501 --- /dev/null +++ b/dep/cxx_function/cxx_function @@ -0,0 +1 @@ +Subproject commit 8220501d0db1bcdd28a11c958f623c079c243000 diff --git a/test/unit-test/CMakeLists.txt b/test/unit-test/CMakeLists.txt index f5333c3..f7f3c74 100644 --- a/test/unit-test/CMakeLists.txt +++ b/test/unit-test/CMakeLists.txt @@ -14,6 +14,7 @@ foreach(STEP RANGE 4) target_link_libraries(${PROJECT_NAME} PRIVATE gtest-main + cxx_function continuable) target_compile_definitions(${PROJECT_NAME} diff --git a/test/unit-test/test-continuable.hpp b/test/unit-test/test-continuable.hpp index aa1541b..59be119 100644 --- a/test/unit-test/test-continuable.hpp +++ b/test/unit-test/test-continuable.hpp @@ -29,8 +29,18 @@ #include "continuable/continuable-base.hpp" #include "continuable/continuable-testing.hpp" #include "continuable/continuable.hpp" +#include "cxx_function/cxx_function.hpp" #include "gtest/gtest.h" +template +using cxx_trait_of = cti::continuable_trait; + +template +using unique_cxx_trait_of = + cti::continuable_trait; + using cti::detail::util::identity; inline auto to_hint(identity<> /*hint*/) { return identity{}; }