diff options
| author | Arthur LAURENT <[email protected]> | 2025-05-21 01:37:17 +0200 |
|---|---|---|
| committer | Arthur LAURENT <[email protected]> | 2025-05-21 04:53:30 +0200 |
| commit | 8b4e9f90ba045edb14cb2800c506ee6bc5118cd7 (patch) | |
| tree | ffa4bc5edf9e19d953689fde3cc811382397e786 /tests/projects/c++/modules/class_cmake | |
| parent | bfc0f75db8c238187aa011f522adf9685e023b31 (diff) | |
(C++ modules support) refactor tests
Diffstat (limited to 'tests/projects/c++/modules/class_cmake')
5 files changed, 41 insertions, 0 deletions
diff --git a/tests/projects/c++/modules/class_cmake/src/hello.mpp b/tests/projects/c++/modules/class_cmake/src/hello.mpp new file mode 100644 index 000000000..268964aa3 --- /dev/null +++ b/tests/projects/c++/modules/class_cmake/src/hello.mpp @@ -0,0 +1,11 @@ +export module hello; + +export namespace hello { + class say { + public: + say(int data); + void hello(); + private: + int data_; + }; +} diff --git a/tests/projects/c++/modules/class_cmake/src/hello_impl.cpp b/tests/projects/c++/modules/class_cmake/src/hello_impl.cpp new file mode 100644 index 000000000..5dd555a7a --- /dev/null +++ b/tests/projects/c++/modules/class_cmake/src/hello_impl.cpp @@ -0,0 +1,14 @@ +module; +#include <iostream> + +module hello; + +using namespace std; +namespace hello { + say::say(int data) : data_(data) { + + } + void say::hello() { + cout << "hello, say class: " << data_ << endl; + } +} diff --git a/tests/projects/c++/modules/class_cmake/src/main.cpp b/tests/projects/c++/modules/class_cmake/src/main.cpp new file mode 100644 index 000000000..b96807bda --- /dev/null +++ b/tests/projects/c++/modules/class_cmake/src/main.cpp @@ -0,0 +1,7 @@ +import hello; + +int main() { + hello::say s(sizeof(hello::say)); + s.hello(); + return 0; +} diff --git a/tests/projects/c++/modules/class_cmake/test.lua b/tests/projects/c++/modules/class_cmake/test.lua new file mode 100644 index 000000000..703d66bdc --- /dev/null +++ b/tests/projects/c++/modules/class_cmake/test.lua @@ -0,0 +1 @@ +inherit(".test_cmake") diff --git a/tests/projects/c++/modules/class_cmake/xmake.lua b/tests/projects/c++/modules/class_cmake/xmake.lua new file mode 100644 index 000000000..42da78369 --- /dev/null +++ b/tests/projects/c++/modules/class_cmake/xmake.lua @@ -0,0 +1,8 @@ +add_rules("mode.release", "mode.debug") +set_languages("c++20") + +target("class") + set_kind("binary") + add_files("src/*.cpp", "src/*.mpp") + + |
