diff options
| author | 魏曹先生 <1992414357@qq.com> | 2026-06-22 23:59:31 +0800 |
|---|---|---|
| committer | 魏曹先生 <1992414357@qq.com> | 2026-06-22 23:59:31 +0800 |
| commit | 443ffe86485519a218997955335cde142733f88f (patch) | |
| tree | ef331749338c8653ac8a241bfd1cf83cd0683468 /examples | |
| parent | 31b5abfc96013309530025b751293c7de916dcf3 (diff) | |
Make route! macro auto-convert error types
`route!()` now calls `Groupped::to_chain()` on the error branch,
removing the need for callers to pre-convert with `.to_chain()` or
`.to_render()`.
Diffstat (limited to 'examples')
| -rw-r--r-- | examples/example-argument-parse/src/main.rs | 2 | ||||
| -rw-r--r-- | examples/example-custom-pickable/src/main.rs | 2 | ||||
| -rw-r--r-- | examples/full-todolist/src/main.rs | 4 |
3 files changed, 4 insertions, 4 deletions
diff --git a/examples/example-argument-parse/src/main.rs b/examples/example-argument-parse/src/main.rs index 316e52f..4929b7c 100644 --- a/examples/example-argument-parse/src/main.rs +++ b/examples/example-argument-parse/src/main.rs @@ -59,7 +59,7 @@ fn handle_strict_transfer_parse(args: EntryStrictTransfer) -> Next { .pick::<bool>(["--dir", "-D"]) .pick_or::<usize>("--size", 1024 * 1024_usize) // Finally parse the positional argument; if not found, route to `ErrorNoNameProvided` - .pick_or_route::<String, _>((), ErrorNoNameProvided::default().to_chain()) + .pick_or_route::<String, _>((), ErrorNoNameProvided::default()) .after(|str| str.trim().replace(' ', "")) .unpack() } diff --git a/examples/example-custom-pickable/src/main.rs b/examples/example-custom-pickable/src/main.rs index a2aa662..015cc62 100644 --- a/examples/example-custom-pickable/src/main.rs +++ b/examples/example-custom-pickable/src/main.rs @@ -46,7 +46,7 @@ pack!(ErrorParseAddressFailed = ()); #[chain] fn handle_connect(prev: EntryConnect) -> Next { let connect: Address = - route! { prev.pick_or_route((), ErrorParseAddressFailed::default().to_chain()).unpack() }; + route! { prev.pick_or_route((), ErrorParseAddressFailed::default()).unpack() }; connect.to_chain() } diff --git a/examples/full-todolist/src/main.rs b/examples/full-todolist/src/main.rs index fdac1c7..7f958d4 100644 --- a/examples/full-todolist/src/main.rs +++ b/examples/full-todolist/src/main.rs @@ -79,7 +79,7 @@ fn main() { fn handle_add(args: EntryAdd) -> Next { let task: String = route! { args - .pick_or_route((), ErrorNoTaskDescriptionProvided::new(()).to_render()) + .pick_or_route((), ErrorNoTaskDescriptionProvided::new(())) .unpack() }; StateAddTodo::new(task).to_chain() @@ -119,7 +119,7 @@ fn handle_list(_args: EntryList, todolist: &mut LazyRes<ResTodoList>) -> Next { #[chain] fn handle_complete(args: EntryComplete) -> Next { let index: i32 = route! { - args.pick_or_route((), ErrorNoIndexProvided::new(()).to_render()).unpack() + args.pick_or_route((), ErrorNoIndexProvided::new(())).unpack() }; StateCompleteTodo::new(index).to_chain() } |
