Expand description
The trait to wrap rust function to JS directly
The possible range of function arguments
Post-processing the function
sourceimpl<'js, F1, A1, R1, F2, A2, R2, F3, A3, R3, F4, A4, R4> AsFunction<'js, (A1, A2, A3, A4), (R1, R2, R3, R4)> for (F1, F2, F3, F4) where
F1: 'static + AsFunction<'js, A1, R1> + ParallelSend,
F2: 'static + AsFunction<'js, A2, R2> + ParallelSend,
F3: 'static + AsFunction<'js, A3, R3> + ParallelSend,
F4: 'static + AsFunction<'js, A4, R4> + ParallelSend,
sourceimpl<'js, F1, A1, R1, F2, A2, R2> AsFunction<'js, (A1, A2), (R1, R2)> for (F1, F2) where
F1: 'static + AsFunction<'js, A1, R1> + ParallelSend,
F2: 'static + AsFunction<'js, A2, R2> + ParallelSend,
sourceimpl<'js, F1, A1, R1, F2, A2, R2, F3, A3, R3> AsFunction<'js, (A1, A2, A3), (R1, R2, R3)> for (F1, F2, F3) where
F1: 'static + AsFunction<'js, A1, R1> + ParallelSend,
F2: 'static + AsFunction<'js, A2, R2> + ParallelSend,
F3: 'static + AsFunction<'js, A3, R3> + ParallelSend,
sourceimpl<'js, F1, A1, R1, F2, A2, R2, F3, A3, R3, F4, A4, R4, F5, A5, R5> AsFunction<'js, (A1, A2, A3, A4, A5), (R1, R2, R3, R4, R5)> for (F1, F2, F3, F4, F5) where
F1: 'static + AsFunction<'js, A1, R1> + ParallelSend,
F2: 'static + AsFunction<'js, A2, R2> + ParallelSend,
F3: 'static + AsFunction<'js, A3, R3> + ParallelSend,
F4: 'static + AsFunction<'js, A4, R4> + ParallelSend,
F5: 'static + AsFunction<'js, A5, R5> + ParallelSend,
sourceimpl<'js, F1, A1, R1, F2, A2, R2, F3, A3, R3, F4, A4, R4, F5, A5, R5, F6, A6, R6> AsFunction<'js, (A1, A2, A3, A4, A5, A6), (R1, R2, R3, R4, R5, R6)> for (F1, F2, F3, F4, F5, F6) where
F1: 'static + AsFunction<'js, A1, R1> + ParallelSend,
F2: 'static + AsFunction<'js, A2, R2> + ParallelSend,
F3: 'static + AsFunction<'js, A3, R3> + ParallelSend,
F4: 'static + AsFunction<'js, A4, R4> + ParallelSend,
F5: 'static + AsFunction<'js, A5, R5> + ParallelSend,
F6: 'static + AsFunction<'js, A6, R6> + ParallelSend,
sourceimpl<'js, F, R, A, B> AsFunction<'js, (A, B), Promised<R>> for Async<F> where
F: 'static + Fn(A, B) -> R + ParallelSend,
R: 'static + Future + ParallelSend,
A: FromInput<'js>,
B: FromInput<'js>,
<R as Future>::Output: for<'js_> IntoJs<'js_>,
sourceimpl<'js, F, R, A, B> AsFunction<'js, (A, B), R> for MutFn<F> where
F: 'static + FnMut(A, B) -> R + ParallelSend,
R: IntoJs<'js>,
A: FromInput<'js>,
B: FromInput<'js>,
sourceimpl<'js, F, R, A, B> AsFunction<'js, (A, B), R> for OnceFn<F> where
F: 'static + FnOnce(A, B) -> R + ParallelSend,
R: IntoJs<'js>,
A: FromInput<'js>,
B: FromInput<'js>,
sourceimpl<'js, F, R, A, B> AsFunction<'js, (A, B), R> for F where
F: 'static + Fn(A, B) -> R + ParallelSend,
R: IntoJs<'js>,
A: FromInput<'js>,
B: FromInput<'js>,
sourceimpl<'js, F, R, A, B, D> AsFunction<'js, (A, B, D), Promised<R>> for Async<MutFn<F>> where
F: 'static + FnMut(A, B, D) -> R + ParallelSend,
R: 'static + Future + ParallelSend,
A: FromInput<'js>,
B: FromInput<'js>,
D: FromInput<'js>,
<R as Future>::Output: for<'js_> IntoJs<'js_>,
sourceimpl<'js, F, R, A, B, D> AsFunction<'js, (A, B, D), Promised<R>> for Async<OnceFn<F>> where
F: 'static + FnOnce(A, B, D) -> R + ParallelSend,
R: 'static + Future + ParallelSend,
A: FromInput<'js>,
B: FromInput<'js>,
D: FromInput<'js>,
<R as Future>::Output: for<'js_> IntoJs<'js_>,
sourceimpl<'js, F, R, A, B, D> AsFunction<'js, (A, B, D), Promised<R>> for Async<F> where
F: 'static + Fn(A, B, D) -> R + ParallelSend,
R: 'static + Future + ParallelSend,
A: FromInput<'js>,
B: FromInput<'js>,
D: FromInput<'js>,
<R as Future>::Output: for<'js_> IntoJs<'js_>,
sourceimpl<'js, F, R, A, B, D> AsFunction<'js, (A, B, D), R> for MutFn<F> where
F: 'static + FnMut(A, B, D) -> R + ParallelSend,
R: IntoJs<'js>,
A: FromInput<'js>,
B: FromInput<'js>,
D: FromInput<'js>,
sourceimpl<'js, F, R, A, B, D> AsFunction<'js, (A, B, D), R> for OnceFn<F> where
F: 'static + FnOnce(A, B, D) -> R + ParallelSend,
R: IntoJs<'js>,
A: FromInput<'js>,
B: FromInput<'js>,
D: FromInput<'js>,
sourceimpl<'js, F, R, A, B, D> AsFunction<'js, (A, B, D), R> for F where
F: 'static + Fn(A, B, D) -> R + ParallelSend,
R: IntoJs<'js>,
A: FromInput<'js>,
B: FromInput<'js>,
D: FromInput<'js>,
sourceimpl<'js, F, R, A, B, D, E> AsFunction<'js, (A, B, D, E), Promised<R>> for Async<MutFn<F>> where
F: 'static + FnMut(A, B, D, E) -> R + ParallelSend,
R: 'static + Future + ParallelSend,
A: FromInput<'js>,
B: FromInput<'js>,
D: FromInput<'js>,
E: FromInput<'js>,
<R as Future>::Output: for<'js_> IntoJs<'js_>,
sourceimpl<'js, F, R, A, B, D, E> AsFunction<'js, (A, B, D, E), Promised<R>> for Async<OnceFn<F>> where
F: 'static + FnOnce(A, B, D, E) -> R + ParallelSend,
R: 'static + Future + ParallelSend,
A: FromInput<'js>,
B: FromInput<'js>,
D: FromInput<'js>,
E: FromInput<'js>,
<R as Future>::Output: for<'js_> IntoJs<'js_>,
sourceimpl<'js, F, R, A, B, D, E> AsFunction<'js, (A, B, D, E), Promised<R>> for Async<F> where
F: 'static + Fn(A, B, D, E) -> R + ParallelSend,
R: 'static + Future + ParallelSend,
A: FromInput<'js>,
B: FromInput<'js>,
D: FromInput<'js>,
E: FromInput<'js>,
<R as Future>::Output: for<'js_> IntoJs<'js_>,
sourceimpl<'js, F, R, A, B, D, E> AsFunction<'js, (A, B, D, E), R> for MutFn<F> where
F: 'static + FnMut(A, B, D, E) -> R + ParallelSend,
R: IntoJs<'js>,
A: FromInput<'js>,
B: FromInput<'js>,
D: FromInput<'js>,
E: FromInput<'js>,
sourceimpl<'js, F, R, A, B, D, E> AsFunction<'js, (A, B, D, E), R> for OnceFn<F> where
F: 'static + FnOnce(A, B, D, E) -> R + ParallelSend,
R: IntoJs<'js>,
A: FromInput<'js>,
B: FromInput<'js>,
D: FromInput<'js>,
E: FromInput<'js>,
sourceimpl<'js, F, R, A, B, D, E> AsFunction<'js, (A, B, D, E), R> for F where
F: 'static + Fn(A, B, D, E) -> R + ParallelSend,
R: IntoJs<'js>,
A: FromInput<'js>,
B: FromInput<'js>,
D: FromInput<'js>,
E: FromInput<'js>,
sourceimpl<'js, F, R, A, B, D, E, G> AsFunction<'js, (A, B, D, E, G), Promised<R>> for Async<MutFn<F>> where
F: 'static + FnMut(A, B, D, E, G) -> R + ParallelSend,
R: 'static + Future + ParallelSend,
A: FromInput<'js>,
B: FromInput<'js>,
D: FromInput<'js>,
E: FromInput<'js>,
G: FromInput<'js>,
<R as Future>::Output: for<'js_> IntoJs<'js_>,
sourceimpl<'js, F, R, A, B, D, E, G> AsFunction<'js, (A, B, D, E, G), Promised<R>> for Async<OnceFn<F>> where
F: 'static + FnOnce(A, B, D, E, G) -> R + ParallelSend,
R: 'static + Future + ParallelSend,
A: FromInput<'js>,
B: FromInput<'js>,
D: FromInput<'js>,
E: FromInput<'js>,
G: FromInput<'js>,
<R as Future>::Output: for<'js_> IntoJs<'js_>,
sourceimpl<'js, F, R, A, B, D, E, G> AsFunction<'js, (A, B, D, E, G), Promised<R>> for Async<F> where
F: 'static + Fn(A, B, D, E, G) -> R + ParallelSend,
R: 'static + Future + ParallelSend,
A: FromInput<'js>,
B: FromInput<'js>,
D: FromInput<'js>,
E: FromInput<'js>,
G: FromInput<'js>,
<R as Future>::Output: for<'js_> IntoJs<'js_>,
sourceimpl<'js, F, R, A, B, D, E, G> AsFunction<'js, (A, B, D, E, G), R> for MutFn<F> where
F: 'static + FnMut(A, B, D, E, G) -> R + ParallelSend,
R: IntoJs<'js>,
A: FromInput<'js>,
B: FromInput<'js>,
D: FromInput<'js>,
E: FromInput<'js>,
G: FromInput<'js>,
sourceimpl<'js, F, R, A, B, D, E, G> AsFunction<'js, (A, B, D, E, G), R> for OnceFn<F> where
F: 'static + FnOnce(A, B, D, E, G) -> R + ParallelSend,
R: IntoJs<'js>,
A: FromInput<'js>,
B: FromInput<'js>,
D: FromInput<'js>,
E: FromInput<'js>,
G: FromInput<'js>,
sourceimpl<'js, F, R, A, B, D, E, G> AsFunction<'js, (A, B, D, E, G), R> for F where
F: 'static + Fn(A, B, D, E, G) -> R + ParallelSend,
R: IntoJs<'js>,
A: FromInput<'js>,
B: FromInput<'js>,
D: FromInput<'js>,
E: FromInput<'js>,
G: FromInput<'js>,
sourceimpl<'js, F, R, A, B, D, E, G, H> AsFunction<'js, (A, B, D, E, G, H), Promised<R>> for Async<MutFn<F>> where
F: 'static + FnMut(A, B, D, E, G, H) -> R + ParallelSend,
R: 'static + Future + ParallelSend,
A: FromInput<'js>,
B: FromInput<'js>,
D: FromInput<'js>,
E: FromInput<'js>,
G: FromInput<'js>,
H: FromInput<'js>,
<R as Future>::Output: for<'js_> IntoJs<'js_>,
sourceimpl<'js, F, R, A, B, D, E, G, H> AsFunction<'js, (A, B, D, E, G, H), Promised<R>> for Async<OnceFn<F>> where
F: 'static + FnOnce(A, B, D, E, G, H) -> R + ParallelSend,
R: 'static + Future + ParallelSend,
A: FromInput<'js>,
B: FromInput<'js>,
D: FromInput<'js>,
E: FromInput<'js>,
G: FromInput<'js>,
H: FromInput<'js>,
<R as Future>::Output: for<'js_> IntoJs<'js_>,
sourceimpl<'js, F, R, A, B, D, E, G, H> AsFunction<'js, (A, B, D, E, G, H), Promised<R>> for Async<F> where
F: 'static + Fn(A, B, D, E, G, H) -> R + ParallelSend,
R: 'static + Future + ParallelSend,
A: FromInput<'js>,
B: FromInput<'js>,
D: FromInput<'js>,
E: FromInput<'js>,
G: FromInput<'js>,
H: FromInput<'js>,
<R as Future>::Output: for<'js_> IntoJs<'js_>,
sourceimpl<'js, F, R, A, B, D, E, G, H> AsFunction<'js, (A, B, D, E, G, H), R> for MutFn<F> where
F: 'static + FnMut(A, B, D, E, G, H) -> R + ParallelSend,
R: IntoJs<'js>,
A: FromInput<'js>,
B: FromInput<'js>,
D: FromInput<'js>,
E: FromInput<'js>,
G: FromInput<'js>,
H: FromInput<'js>,
sourceimpl<'js, F, R, A, B, D, E, G, H> AsFunction<'js, (A, B, D, E, G, H), R> for OnceFn<F> where
F: 'static + FnOnce(A, B, D, E, G, H) -> R + ParallelSend,
R: IntoJs<'js>,
A: FromInput<'js>,
B: FromInput<'js>,
D: FromInput<'js>,
E: FromInput<'js>,
G: FromInput<'js>,
H: FromInput<'js>,
sourceimpl<'js, F, R, A, B, D, E, G, H> AsFunction<'js, (A, B, D, E, G, H), R> for F where
F: 'static + Fn(A, B, D, E, G, H) -> R + ParallelSend,
R: IntoJs<'js>,
A: FromInput<'js>,
B: FromInput<'js>,
D: FromInput<'js>,
E: FromInput<'js>,
G: FromInput<'js>,
H: FromInput<'js>,
sourceimpl<'js, F, R, T, A> AsFunction<'js, (T, A), R> for Method<F> where
F: 'static + Fn(T, A) -> R + ParallelSend,
R: IntoJs<'js>,
T: FromJs<'js>,
A: FromInput<'js>,
sourceimpl<'js, F, R, T, A, B> AsFunction<'js, (T, A, B), Promised<R>> for Async<Method<F>> where
F: 'static + Fn(T, A, B) -> R + ParallelSend,
R: 'static + Future + ParallelSend,
T: FromJs<'js>,
A: FromInput<'js>,
B: FromInput<'js>,
<R as Future>::Output: for<'js_> IntoJs<'js_>,
sourceimpl<'js, F, R, T, A, B> AsFunction<'js, (T, A, B), R> for Method<F> where
F: 'static + Fn(T, A, B) -> R + ParallelSend,
R: IntoJs<'js>,
T: FromJs<'js>,
A: FromInput<'js>,
B: FromInput<'js>,
sourceimpl<'js, F, R, T, A, B, D> AsFunction<'js, (T, A, B, D), Promised<R>> for Async<Method<F>> where
F: 'static + Fn(T, A, B, D) -> R + ParallelSend,
R: 'static + Future + ParallelSend,
T: FromJs<'js>,
A: FromInput<'js>,
B: FromInput<'js>,
D: FromInput<'js>,
<R as Future>::Output: for<'js_> IntoJs<'js_>,
sourceimpl<'js, F, R, T, A, B, D> AsFunction<'js, (T, A, B, D), R> for Method<F> where
F: 'static + Fn(T, A, B, D) -> R + ParallelSend,
R: IntoJs<'js>,
T: FromJs<'js>,
A: FromInput<'js>,
B: FromInput<'js>,
D: FromInput<'js>,
sourceimpl<'js, F, R, T, A, B, D, E> AsFunction<'js, (T, A, B, D, E), Promised<R>> for Async<Method<F>> where
F: 'static + Fn(T, A, B, D, E) -> R + ParallelSend,
R: 'static + Future + ParallelSend,
T: FromJs<'js>,
A: FromInput<'js>,
B: FromInput<'js>,
D: FromInput<'js>,
E: FromInput<'js>,
<R as Future>::Output: for<'js_> IntoJs<'js_>,
sourceimpl<'js, F, R, T, A, B, D, E> AsFunction<'js, (T, A, B, D, E), R> for Method<F> where
F: 'static + Fn(T, A, B, D, E) -> R + ParallelSend,
R: IntoJs<'js>,
T: FromJs<'js>,
A: FromInput<'js>,
B: FromInput<'js>,
D: FromInput<'js>,
E: FromInput<'js>,
sourceimpl<'js, F, R, T, A, B, D, E, G> AsFunction<'js, (T, A, B, D, E, G), Promised<R>> for Async<Method<F>> where
F: 'static + Fn(T, A, B, D, E, G) -> R + ParallelSend,
R: 'static + Future + ParallelSend,
T: FromJs<'js>,
A: FromInput<'js>,
B: FromInput<'js>,
D: FromInput<'js>,
E: FromInput<'js>,
G: FromInput<'js>,
<R as Future>::Output: for<'js_> IntoJs<'js_>,
sourceimpl<'js, F, R, T, A, B, D, E, G> AsFunction<'js, (T, A, B, D, E, G), R> for Method<F> where
F: 'static + Fn(T, A, B, D, E, G) -> R + ParallelSend,
R: IntoJs<'js>,
T: FromJs<'js>,
A: FromInput<'js>,
B: FromInput<'js>,
D: FromInput<'js>,
E: FromInput<'js>,
G: FromInput<'js>,
sourceimpl<'js, F, R, T, A, B, D, E, G, H> AsFunction<'js, (T, A, B, D, E, G, H), Promised<R>> for Async<Method<F>> where
F: 'static + Fn(T, A, B, D, E, G, H) -> R + ParallelSend,
R: 'static + Future + ParallelSend,
T: FromJs<'js>,
A: FromInput<'js>,
B: FromInput<'js>,
D: FromInput<'js>,
E: FromInput<'js>,
G: FromInput<'js>,
H: FromInput<'js>,
<R as Future>::Output: for<'js_> IntoJs<'js_>,
sourceimpl<'js, F, R, T, A, B, D, E, G, H> AsFunction<'js, (T, A, B, D, E, G, H), R> for Method<F> where
F: 'static + Fn(T, A, B, D, E, G, H) -> R + ParallelSend,
R: IntoJs<'js>,
T: FromJs<'js>,
A: FromInput<'js>,
B: FromInput<'js>,
D: FromInput<'js>,
E: FromInput<'js>,
G: FromInput<'js>,
H: FromInput<'js>,