diff options
Diffstat (limited to 'examples/example-pathfinder/src/sub/mod.rs')
| -rw-r--r-- | examples/example-pathfinder/src/sub/mod.rs | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/examples/example-pathfinder/src/sub/mod.rs b/examples/example-pathfinder/src/sub/mod.rs new file mode 100644 index 0000000..ef10a75 --- /dev/null +++ b/examples/example-pathfinder/src/sub/mod.rs @@ -0,0 +1,21 @@ +use mingling::prelude::*; +use crate::Next; + +dispatcher!("greet", CMDGreet => EntryGreet); +pack!(ResultName = String); + +#[chain] +pub fn handle_greet(args: EntryGreet) -> Next { + let name: ResultName = args + .inner + .first() + .cloned() + .unwrap_or_else(|| "World".to_string()) + .into(); + name +} + +#[renderer] +pub fn render_name(name: ResultName) { + r_println!("Hello, {}!", *name); +} |
