error[E0277]: this function cannot be converted into a handler
--> tests/ui/wrong_param_order.rs:24:32
|
24 | register_handler::<u32, _>(bad_order, ®);
| -------------------------- ^^^^^^^^^ the trait `IntoHandler<u32, _>` is not implemented for fn item `for<'a> fn(u32, Res<'a, Config>) {bad_order}`
| |
| required by a bound introduced by this call
|
= note: handler signature: `fn(Res<A>, ResMut<B>, ..., Event)` — resources first, event last
= note: for Handler<()> with params, wrap with `no_event(fn_name)` to omit the event parameter
= note: closures with resource parameters (Res<T>, ResMut<T>) are not supported — use a named `fn`
= note: arity-0 closures (`fn(Event)` with no resources) ARE supported
= help: the following other types implement trait `IntoHandler<E, Params>`:
`NoEvent<F>` implements `IntoHandler<(), (P0, P1)>`
`NoEvent<F>` implements `IntoHandler<(), (P0, P1, P2)>`
`NoEvent<F>` implements `IntoHandler<(), (P0, P1, P2, P3)>`
`NoEvent<F>` implements `IntoHandler<(), (P0, P1, P2, P3, P4)>`
`NoEvent<F>` implements `IntoHandler<(), (P0, P1, P2, P3, P4, P5)>`
`NoEvent<F>` implements `IntoHandler<(), (P0, P1, P2, P3, P4, P5, P6)>`
`NoEvent<F>` implements `IntoHandler<(), (P0, P1, P2, P3, P4, P5, P6, P7)>`
`NoEvent<F>` implements `IntoHandler<(), (P0,)>`
note: required by a bound in `register_handler`
--> tests/ui/wrong_param_order.rs:14:35
|
14 | fn register_handler<E, P>(f: impl IntoHandler<E, P>, registry: &nexus_rt::Registry) {
| ^^^^^^^^^^^^^^^^^ required by this bound in `register_handler`