Skip to main content

HostFunction

Trait HostFunction 

Source
pub trait HostFunction<Args>: 'static {
    // Required method
    fn call(&self, scope: &mut Scope<'_>) -> JsResult<Value>;
}
Expand description

What Js::new_function takes: a closure over a Scope. Args is the marker the closure’s shape selects on.

Required Methods§

Source

fn call(&self, scope: &mut Scope<'_>) -> JsResult<Value>

Dyn Compatibility§

This trait is dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementors§

Source§

impl<F, R, A0, A1, A2, A3, A4, A5, A6, A7> HostFunction<(A0, A1, A2, A3, A4, A5, A6, A7)> for F
where F: Fn(&mut Scope<'_>, A0, A1, A2, A3, A4, A5, A6, A7) -> JsResult<R> + 'static, A0: FromJs, A1: FromJs, A2: FromJs, A3: FromJs, A4: FromJs, A5: FromJs, A6: FromJs, A7: FromJs, R: IntoJs,

Source§

impl<F, R, A0, A1, A2, A3, A4, A5, A6> HostFunction<(A0, A1, A2, A3, A4, A5, A6)> for F
where F: Fn(&mut Scope<'_>, A0, A1, A2, A3, A4, A5, A6) -> JsResult<R> + 'static, A0: FromJs, A1: FromJs, A2: FromJs, A3: FromJs, A4: FromJs, A5: FromJs, A6: FromJs, R: IntoJs,

Source§

impl<F, R, A0, A1, A2, A3, A4, A5> HostFunction<(A0, A1, A2, A3, A4, A5)> for F
where F: Fn(&mut Scope<'_>, A0, A1, A2, A3, A4, A5) -> JsResult<R> + 'static, A0: FromJs, A1: FromJs, A2: FromJs, A3: FromJs, A4: FromJs, A5: FromJs, R: IntoJs,

Source§

impl<F, R, A0, A1, A2, A3, A4> HostFunction<(A0, A1, A2, A3, A4)> for F
where F: Fn(&mut Scope<'_>, A0, A1, A2, A3, A4) -> JsResult<R> + 'static, A0: FromJs, A1: FromJs, A2: FromJs, A3: FromJs, A4: FromJs, R: IntoJs,

Source§

impl<F, R, A0, A1, A2, A3> HostFunction<(A0, A1, A2, A3)> for F
where F: Fn(&mut Scope<'_>, A0, A1, A2, A3) -> JsResult<R> + 'static, A0: FromJs, A1: FromJs, A2: FromJs, A3: FromJs, R: IntoJs,

Source§

impl<F, R, A0, A1, A2> HostFunction<(A0, A1, A2)> for F
where F: Fn(&mut Scope<'_>, A0, A1, A2) -> JsResult<R> + 'static, A0: FromJs, A1: FromJs, A2: FromJs, R: IntoJs,

Source§

impl<F, R, A0, A1> HostFunction<(A0, A1)> for F
where F: Fn(&mut Scope<'_>, A0, A1) -> JsResult<R> + 'static, A0: FromJs, A1: FromJs, R: IntoJs,

Source§

impl<F, R, A0> HostFunction<(A0,)> for F
where F: Fn(&mut Scope<'_>, A0) -> JsResult<R> + 'static, A0: FromJs, R: IntoJs,

Source§

impl<F> HostFunction<Raw> for F
where F: Fn(&mut Scope<'_>) -> JsResult<Value> + 'static,