aboutsummaryrefslogtreecommitdiff
path: root/mingling_pathf/test/src/test_files/test_chain.rs
diff options
context:
space:
mode:
author魏曹先生 <1992414357@qq.com>2026-06-28 09:06:08 +0800
committer魏曹先生 <1992414357@qq.com>2026-06-28 09:06:08 +0800
commit748c14588cf1c31c8b8d60a9c94349c0173ef607 (patch)
tree4c09bfafd93b629a68f0f78902a33e8dd9ef18d1 /mingling_pathf/test/src/test_files/test_chain.rs
parent50f2d767e2d07685e49fb7deae68d506ea11a79d (diff)
feat(pathf): add build-time type path resolution system
Add `mingling_pathf` sub-crate and `pathf` feature for automatic resolution of Mingling type module paths at build time. Scans source files, identifies macro invocations via pattern matchers, and generates mapping files consumed by `gen_program!()`.
Diffstat (limited to 'mingling_pathf/test/src/test_files/test_chain.rs')
-rw-r--r--mingling_pathf/test/src/test_files/test_chain.rs61
1 files changed, 61 insertions, 0 deletions
diff --git a/mingling_pathf/test/src/test_files/test_chain.rs b/mingling_pathf/test/src/test_files/test_chain.rs
new file mode 100644
index 0000000..e209a5e
--- /dev/null
+++ b/mingling_pathf/test/src/test_files/test_chain.rs
@@ -0,0 +1,61 @@
+#[mingling::macros::chain]
+fn my_chain1(prev: Some1) -> Next {
+
+}
+
+#[mingling::macros::chain]
+pub fn my_chain2(prev: Some2) -> Next {
+
+}
+
+#[mingling::macros::chain]
+pub async fn my_chain3(prev: Some3) -> Next {
+
+}
+
+#[chain]
+fn my_chain4(prev: Some4) {
+
+}
+
+#[chain]
+pub fn my_chain5(prev: Some5) {
+
+}
+
+#[chain]
+pub async fn my_chain6(prev: Some6) {
+
+}
+
+pub mod sub {
+ #[mingling::macros::chain]
+ fn my_chain1(prev: Some1) -> Next {
+
+ }
+
+ #[mingling::macros::chain]
+ pub fn my_chain2(prev: Some2) -> Next {
+
+ }
+
+ #[mingling::macros::chain]
+ pub async fn my_chain3(prev: Some3) -> Next {
+
+ }
+
+ #[chain]
+ fn my_chain4(prev: Some4) {
+
+ }
+
+ #[chain]
+ pub fn my_chain5(prev: Some5) {
+
+ }
+
+ #[chain]
+ pub async fn my_chain6(prev: Some6) {
+
+ }
+}