summaryrefslogtreecommitdiff
path: root/tests/projects/c++/modules
diff options
context:
space:
mode:
authorruki <[email protected]>2021-10-13 23:18:34 +0800
committerruki <[email protected]>2021-10-13 23:18:34 +0800
commit55b632b420a23550991083471c90bbd042a974f7 (patch)
treed93ec759db6b9a2bd5beb337a31b8196e6bd18a5 /tests/projects/c++/modules
parentcbfbb1636bd892aa42054214e327eb6813654202 (diff)
add c++ submodules and partitions
Diffstat (limited to 'tests/projects/c++/modules')
-rw-r--r--tests/projects/c++/modules/partitions/src/main.cpp10
-rw-r--r--tests/projects/c++/modules/partitions/src/math.mpp4
-rw-r--r--tests/projects/c++/modules/partitions/src/math1.mpp5
-rw-r--r--tests/projects/c++/modules/partitions/src/math2.mpp7
-rw-r--r--tests/projects/c++/modules/partitions/xmake.lua7
-rw-r--r--tests/projects/c++/modules/submodules/src/main.cpp10
-rw-r--r--tests/projects/c++/modules/submodules/src/math.mpp4
-rw-r--r--tests/projects/c++/modules/submodules/src/math1.mpp5
-rw-r--r--tests/projects/c++/modules/submodules/src/math2.mpp7
-rw-r--r--tests/projects/c++/modules/submodules/xmake.lua7
10 files changed, 66 insertions, 0 deletions
diff --git a/tests/projects/c++/modules/partitions/src/main.cpp b/tests/projects/c++/modules/partitions/src/main.cpp
new file mode 100644
index 000000000..eaaec9565
--- /dev/null
+++ b/tests/projects/c++/modules/partitions/src/main.cpp
@@ -0,0 +1,10 @@
+import std.core;
+import math;
+
+int main() {
+
+ std::cout << std::endl;
+
+ std::cout << "add(3, 4): " << add(3, 4) << std::endl;
+ std::cout << "mul(3, 4): " << mul(3, 4) << std::endl;
+}
diff --git a/tests/projects/c++/modules/partitions/src/math.mpp b/tests/projects/c++/modules/partitions/src/math.mpp
new file mode 100644
index 000000000..11402ade6
--- /dev/null
+++ b/tests/projects/c++/modules/partitions/src/math.mpp
@@ -0,0 +1,4 @@
+export module math;
+
+export import :math1;
+export import :math2;
diff --git a/tests/projects/c++/modules/partitions/src/math1.mpp b/tests/projects/c++/modules/partitions/src/math1.mpp
new file mode 100644
index 000000000..8537d161a
--- /dev/null
+++ b/tests/projects/c++/modules/partitions/src/math1.mpp
@@ -0,0 +1,5 @@
+export module math:math1;
+
+export int add(int fir, int sec) {
+ return fir + sec;
+}
diff --git a/tests/projects/c++/modules/partitions/src/math2.mpp b/tests/projects/c++/modules/partitions/src/math2.mpp
new file mode 100644
index 000000000..78e14ed6f
--- /dev/null
+++ b/tests/projects/c++/modules/partitions/src/math2.mpp
@@ -0,0 +1,7 @@
+export module math:math2;
+
+export {
+ int mul(int fir, int sec) {
+ return fir * sec;
+ }
+}
diff --git a/tests/projects/c++/modules/partitions/xmake.lua b/tests/projects/c++/modules/partitions/xmake.lua
new file mode 100644
index 000000000..36697f3e8
--- /dev/null
+++ b/tests/projects/c++/modules/partitions/xmake.lua
@@ -0,0 +1,7 @@
+set_languages("c++20")
+target("math")
+ set_kind("binary")
+ add_files("src/*.cpp")
+ add_files("src/math1.mpp")
+ add_files("src/math2.mpp")
+ add_files("src/math.mpp")
diff --git a/tests/projects/c++/modules/submodules/src/main.cpp b/tests/projects/c++/modules/submodules/src/main.cpp
new file mode 100644
index 000000000..eaaec9565
--- /dev/null
+++ b/tests/projects/c++/modules/submodules/src/main.cpp
@@ -0,0 +1,10 @@
+import std.core;
+import math;
+
+int main() {
+
+ std::cout << std::endl;
+
+ std::cout << "add(3, 4): " << add(3, 4) << std::endl;
+ std::cout << "mul(3, 4): " << mul(3, 4) << std::endl;
+}
diff --git a/tests/projects/c++/modules/submodules/src/math.mpp b/tests/projects/c++/modules/submodules/src/math.mpp
new file mode 100644
index 000000000..0b38b9c08
--- /dev/null
+++ b/tests/projects/c++/modules/submodules/src/math.mpp
@@ -0,0 +1,4 @@
+export module math;
+
+export import math.math1;
+export import math.math2;
diff --git a/tests/projects/c++/modules/submodules/src/math1.mpp b/tests/projects/c++/modules/submodules/src/math1.mpp
new file mode 100644
index 000000000..3e06bf426
--- /dev/null
+++ b/tests/projects/c++/modules/submodules/src/math1.mpp
@@ -0,0 +1,5 @@
+export module math.math1;
+
+export int add(int fir, int sec) {
+ return fir + sec;
+}
diff --git a/tests/projects/c++/modules/submodules/src/math2.mpp b/tests/projects/c++/modules/submodules/src/math2.mpp
new file mode 100644
index 000000000..f6c5381c3
--- /dev/null
+++ b/tests/projects/c++/modules/submodules/src/math2.mpp
@@ -0,0 +1,7 @@
+export module math.math2;
+
+export {
+ int mul(int fir, int sec) {
+ return fir * sec;
+ }
+}
diff --git a/tests/projects/c++/modules/submodules/xmake.lua b/tests/projects/c++/modules/submodules/xmake.lua
new file mode 100644
index 000000000..36697f3e8
--- /dev/null
+++ b/tests/projects/c++/modules/submodules/xmake.lua
@@ -0,0 +1,7 @@
+set_languages("c++20")
+target("math")
+ set_kind("binary")
+ add_files("src/*.cpp")
+ add_files("src/math1.mpp")
+ add_files("src/math2.mpp")
+ add_files("src/math.mpp")