Trait quick_js::Callback [−][src]
The Callback trait is implemented for functions/closures that can be used as callbacks in the JS runtime.
Required methods
fn argument_count(&self) -> usize
[src]
The number of JS arguments required.
fn call(
&self,
args: Vec<JsValue>
) -> Result<Result<JsValue, String>, ValueError>
[src]
&self,
args: Vec<JsValue>
) -> Result<Result<JsValue, String>, ValueError>
Execute the callback.
Should return:
- Err(_) if the JS values could not be converted
- Ok(Err(_)) if an error ocurred while processing. The given error will be raised as a JS exception.
- Ok(Ok(result)) when execution succeeded.
Implementors
impl<A1, A2, A3, A4, A5, R, F> Callback<PhantomData<(&'_ A1, &'_ A2, &'_ A3, &'_ A4, &'_ A5, &'_ R, &'_ F)>> for F where
A1: TryFrom<JsValue, Error = ValueError>,
A2: TryFrom<JsValue, Error = ValueError>,
A3: TryFrom<JsValue, Error = ValueError>,
A4: TryFrom<JsValue, Error = ValueError>,
A5: TryFrom<JsValue, Error = ValueError>,
R: IntoCallbackResult,
F: Fn(A1, A2, A3, A4, A5) -> R + Sized + RefUnwindSafe,
[src]
A1: TryFrom<JsValue, Error = ValueError>,
A2: TryFrom<JsValue, Error = ValueError>,
A3: TryFrom<JsValue, Error = ValueError>,
A4: TryFrom<JsValue, Error = ValueError>,
A5: TryFrom<JsValue, Error = ValueError>,
R: IntoCallbackResult,
F: Fn(A1, A2, A3, A4, A5) -> R + Sized + RefUnwindSafe,
fn argument_count(&self) -> usize
[src]
fn call(
&self,
args: Vec<JsValue>
) -> Result<Result<JsValue, String>, ValueError>
[src]
&self,
args: Vec<JsValue>
) -> Result<Result<JsValue, String>, ValueError>
impl<A1, A2, A3, A4, R, F> Callback<PhantomData<(&'_ A1, &'_ A2, &'_ A3, &'_ A4, &'_ R, &'_ F)>> for F where
A1: TryFrom<JsValue, Error = ValueError>,
A2: TryFrom<JsValue, Error = ValueError>,
A3: TryFrom<JsValue, Error = ValueError>,
A4: TryFrom<JsValue, Error = ValueError>,
R: IntoCallbackResult,
F: Fn(A1, A2, A3, A4) -> R + Sized + RefUnwindSafe,
[src]
A1: TryFrom<JsValue, Error = ValueError>,
A2: TryFrom<JsValue, Error = ValueError>,
A3: TryFrom<JsValue, Error = ValueError>,
A4: TryFrom<JsValue, Error = ValueError>,
R: IntoCallbackResult,
F: Fn(A1, A2, A3, A4) -> R + Sized + RefUnwindSafe,
fn argument_count(&self) -> usize
[src]
fn call(
&self,
args: Vec<JsValue>
) -> Result<Result<JsValue, String>, ValueError>
[src]
&self,
args: Vec<JsValue>
) -> Result<Result<JsValue, String>, ValueError>
impl<A1, A2, A3, R, F> Callback<PhantomData<(&'_ A1, &'_ A2, &'_ A3, &'_ R, &'_ F)>> for F where
A1: TryFrom<JsValue, Error = ValueError>,
A2: TryFrom<JsValue, Error = ValueError>,
A3: TryFrom<JsValue, Error = ValueError>,
R: IntoCallbackResult,
F: Fn(A1, A2, A3) -> R + Sized + RefUnwindSafe,
[src]
A1: TryFrom<JsValue, Error = ValueError>,
A2: TryFrom<JsValue, Error = ValueError>,
A3: TryFrom<JsValue, Error = ValueError>,
R: IntoCallbackResult,
F: Fn(A1, A2, A3) -> R + Sized + RefUnwindSafe,
fn argument_count(&self) -> usize
[src]
fn call(
&self,
args: Vec<JsValue>
) -> Result<Result<JsValue, String>, ValueError>
[src]
&self,
args: Vec<JsValue>
) -> Result<Result<JsValue, String>, ValueError>
impl<A1, A2, R, F> Callback<PhantomData<(&'_ A1, &'_ A2, &'_ R, &'_ F)>> for F where
A1: TryFrom<JsValue, Error = ValueError>,
A2: TryFrom<JsValue, Error = ValueError>,
R: IntoCallbackResult,
F: Fn(A1, A2) -> R + Sized + RefUnwindSafe,
[src]
A1: TryFrom<JsValue, Error = ValueError>,
A2: TryFrom<JsValue, Error = ValueError>,
R: IntoCallbackResult,
F: Fn(A1, A2) -> R + Sized + RefUnwindSafe,
fn argument_count(&self) -> usize
[src]
fn call(
&self,
args: Vec<JsValue>
) -> Result<Result<JsValue, String>, ValueError>
[src]
&self,
args: Vec<JsValue>
) -> Result<Result<JsValue, String>, ValueError>
impl<A1, R, F> Callback<PhantomData<(&'_ A1, &'_ R, &'_ F)>> for F where
A1: TryFrom<JsValue, Error = ValueError>,
R: IntoCallbackResult,
F: Fn(A1) -> R + Sized + RefUnwindSafe,
[src]
A1: TryFrom<JsValue, Error = ValueError>,
R: IntoCallbackResult,
F: Fn(A1) -> R + Sized + RefUnwindSafe,
fn argument_count(&self) -> usize
[src]
fn call(
&self,
args: Vec<JsValue>
) -> Result<Result<JsValue, String>, ValueError>
[src]
&self,
args: Vec<JsValue>
) -> Result<Result<JsValue, String>, ValueError>
impl<F> Callback<PhantomData<(&'_ Arguments, &'_ F)>> for F where
F: Fn(Arguments) + Sized + RefUnwindSafe,
[src]
F: Fn(Arguments) + Sized + RefUnwindSafe,
fn argument_count(&self) -> usize
[src]
fn call(
&self,
args: Vec<JsValue>
) -> Result<Result<JsValue, String>, ValueError>
[src]
&self,
args: Vec<JsValue>
) -> Result<Result<JsValue, String>, ValueError>
impl<F, R> Callback<PhantomData<(&'_ Arguments, &'_ F, &'_ R)>> for F where
R: IntoCallbackResult,
F: Fn(Arguments) -> R + Sized + RefUnwindSafe,
[src]
R: IntoCallbackResult,
F: Fn(Arguments) -> R + Sized + RefUnwindSafe,
fn argument_count(&self) -> usize
[src]
fn call(
&self,
args: Vec<JsValue>
) -> Result<Result<JsValue, String>, ValueError>
[src]
&self,
args: Vec<JsValue>
) -> Result<Result<JsValue, String>, ValueError>
impl<R, F> Callback<PhantomData<(&'_ R, &'_ F)>> for F where
R: IntoCallbackResult,
F: Fn() -> R + Sized + RefUnwindSafe,
[src]
R: IntoCallbackResult,
F: Fn() -> R + Sized + RefUnwindSafe,