Updated threadsafe documentation to mention the first argument error convention
This commit is contained in:
parent
74cd9c49c2
commit
6b8bd01bcc
1 changed files with 7 additions and 1 deletions
|
@ -48,6 +48,10 @@ pub trait ToJs: Copy + Clone {
|
||||||
///
|
///
|
||||||
/// fn resolve(&self, env: &mut Env, output: Self::Output) -> Result<Vec<JsUnknown>> {
|
/// fn resolve(&self, env: &mut Env, output: Self::Output) -> Result<Vec<JsUnknown>> {
|
||||||
/// let value = env.create_uint32(output as u32)?.into_unknown()?;
|
/// let value = env.create_uint32(output as u32)?.into_unknown()?;
|
||||||
|
/// // The first argument in the NodeJS callback will be either a null or an error
|
||||||
|
/// // depending on the result returned by this function.
|
||||||
|
/// // If this Result is Ok, the first argument will be null.
|
||||||
|
/// // If this Result is Err, the first argument will be the error.
|
||||||
/// Ok(vec![value])
|
/// Ok(vec![value])
|
||||||
/// }
|
/// }
|
||||||
/// }
|
/// }
|
||||||
|
@ -200,7 +204,9 @@ unsafe extern "C" fn call_js_cb<T: ToJs>(
|
||||||
|
|
||||||
let status;
|
let status;
|
||||||
|
|
||||||
// Follow the convention of Node.js async callback.
|
// Follow async callback conventions: https://nodejs.org/en/knowledge/errors/what-are-the-error-conventions/
|
||||||
|
// Check if the Result is okay, if so, pass a null as the first (error) argument automatically.
|
||||||
|
// If the Result is an error, pass that as the first argument.
|
||||||
if ret.is_ok() {
|
if ret.is_ok() {
|
||||||
let values = ret.unwrap();
|
let values = ret.unwrap();
|
||||||
let js_null = env.get_null().unwrap();
|
let js_null = env.get_null().unwrap();
|
||||||
|
|
Loading…
Reference in a new issue