From 709b672731bcc1b68209cadc38e0de78d7c28c03 Mon Sep 17 00:00:00 2001 From: 魏曹先生 <1992414357@qq.com> Date: Mon, 29 Jun 2026 15:10:11 +0800 Subject: feat(examples): add pathf + dispatch tree combination example --- .../src/main.rs | 31 ++++++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 examples/example-combine-pathf-dispatch-tree/src/main.rs (limited to 'examples/example-combine-pathf-dispatch-tree/src/main.rs') diff --git a/examples/example-combine-pathf-dispatch-tree/src/main.rs b/examples/example-combine-pathf-dispatch-tree/src/main.rs new file mode 100644 index 0000000..98b3e4c --- /dev/null +++ b/examples/example-combine-pathf-dispatch-tree/src/main.rs @@ -0,0 +1,31 @@ +//! Example: Combining pathf + dispatch_tree +//! +//! > This example demonstrates how to use `pathf` and `dispatch_tree` together. +//! > Types are defined in a submodule (`sub`), and `gen_program!()` resolves +//! > them automatically via pathf without explicit `use` imports. +//! > +//! > **Important**: `dispatch_tree` must be enabled in BOTH `[dependencies]` +//! > AND `[build-dependencies]` so that pathf's builder can detect +//! > `__internal_dispatcher_*` types needed by the dispatch tree. +//! > +//! > Also requires `extra_macros` for the implicit `dispatcher!("hello")` form. +//! +//! Run: +//! ```bash +//! cargo run --manifest-path examples/example-combine-pathf-dispatch-tree/Cargo.toml --quiet -- hello Alice +//! ``` +//! +//! Output: +//! ```plaintext +//! Hello, Alice! +//! ``` + +mod sub; + +use mingling::macros::gen_program; + +fn main() { + ThisProgram::new().exec_and_exit(); +} + +gen_program!(); -- cgit