From 748c14588cf1c31c8b8d60a9c94349c0173ef607 Mon Sep 17 00:00:00 2001 From: 魏曹先生 <1992414357@qq.com> Date: Sun, 28 Jun 2026 09:06:08 +0800 Subject: 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!()`. --- mingling_pathf/test/src/test_files/test_dispatcher.rs | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) create mode 100644 mingling_pathf/test/src/test_files/test_dispatcher.rs (limited to 'mingling_pathf/test/src/test_files/test_dispatcher.rs') diff --git a/mingling_pathf/test/src/test_files/test_dispatcher.rs b/mingling_pathf/test/src/test_files/test_dispatcher.rs new file mode 100644 index 0000000..48f5e4d --- /dev/null +++ b/mingling_pathf/test/src/test_files/test_dispatcher.rs @@ -0,0 +1,17 @@ +mingling::macros::dispatcher!("greet", CMDGreet => EntryGreet); +mingling::macros::dispatcher!("greet"); +mingling::macros::dispatcher!("remote.add", CMDRemoteAdd => EntryRemoteAdd); +mingling::macros::dispatcher!("remote.add"); + +dispatcher!("delete", CMDDelete => EntryDelete); +dispatcher!("delete"); +dispatcher!("remote.rm", CMDRemoteRm => EntryRemoteRm); +dispatcher!("remote.rm"); + +pub mod sub { + mingling::macros::dispatcher!("greet", CMDGreet => EntryGreet); + mingling::macros::dispatcher!("greet"); + + dispatcher!("delete", CMDDelete => EntryDelete); + dispatcher!("delete"); +} -- cgit