pub trait ValidateNapiValue: TypeName {
// Provided method
unsafe fn validate(
env: napi_env,
napi_val: napi_value,
) -> Result<napi_value> { ... }
}Provided Methods§
Sourceunsafe fn validate(env: napi_env, napi_val: napi_value) -> Result<napi_value>
unsafe fn validate(env: napi_env, napi_val: napi_value) -> Result<napi_value>
This function called to validate whether napi value passed to rust is valid type.
The reason why this function return napi_value is that if a Promise<T> passed in
we need to return Promise.reject(T), not the T.
So we need to create Promise.reject(T) in this function.
§Safety
The caller must ensure that:
- The
envis a valid napi env pointer - The
napi_valis a valid js value pointer
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".
Implementations on Foreign Types§
Source§impl ValidateNapiValue for &[f32]
impl ValidateNapiValue for &[f32]
unsafe fn validate(env: napi_env, napi_val: napi_value) -> Result<napi_value>
Source§impl ValidateNapiValue for &[f64]
impl ValidateNapiValue for &[f64]
unsafe fn validate(env: napi_env, napi_val: napi_value) -> Result<napi_value>
Source§impl ValidateNapiValue for &[i8]
impl ValidateNapiValue for &[i8]
unsafe fn validate(env: napi_env, napi_val: napi_value) -> Result<napi_value>
Source§impl ValidateNapiValue for &[i16]
impl ValidateNapiValue for &[i16]
unsafe fn validate(env: napi_env, napi_val: napi_value) -> Result<napi_value>
Source§impl ValidateNapiValue for &[i32]
impl ValidateNapiValue for &[i32]
unsafe fn validate(env: napi_env, napi_val: napi_value) -> Result<napi_value>
Source§impl ValidateNapiValue for &[i64]
impl ValidateNapiValue for &[i64]
unsafe fn validate(env: napi_env, napi_val: napi_value) -> Result<napi_value>
Source§impl ValidateNapiValue for &[u8]
impl ValidateNapiValue for &[u8]
unsafe fn validate(env: napi_env, napi_val: napi_value) -> Result<napi_value>
Source§impl ValidateNapiValue for &[u16]
impl ValidateNapiValue for &[u16]
unsafe fn validate(env: napi_env, napi_val: napi_value) -> Result<napi_value>
Source§impl ValidateNapiValue for &[u32]
impl ValidateNapiValue for &[u32]
unsafe fn validate(env: napi_env, napi_val: napi_value) -> Result<napi_value>
Source§impl ValidateNapiValue for &[u64]
impl ValidateNapiValue for &[u64]
unsafe fn validate(env: napi_env, napi_val: napi_value) -> Result<napi_value>
Source§impl ValidateNapiValue for &mut [f32]
impl ValidateNapiValue for &mut [f32]
unsafe fn validate(env: napi_env, napi_val: napi_value) -> Result<napi_value>
Source§impl ValidateNapiValue for &mut [f64]
impl ValidateNapiValue for &mut [f64]
unsafe fn validate(env: napi_env, napi_val: napi_value) -> Result<napi_value>
Source§impl ValidateNapiValue for &mut [i8]
impl ValidateNapiValue for &mut [i8]
unsafe fn validate(env: napi_env, napi_val: napi_value) -> Result<napi_value>
Source§impl ValidateNapiValue for &mut [i16]
impl ValidateNapiValue for &mut [i16]
unsafe fn validate(env: napi_env, napi_val: napi_value) -> Result<napi_value>
Source§impl ValidateNapiValue for &mut [i32]
impl ValidateNapiValue for &mut [i32]
unsafe fn validate(env: napi_env, napi_val: napi_value) -> Result<napi_value>
Source§impl ValidateNapiValue for &mut [i64]
impl ValidateNapiValue for &mut [i64]
unsafe fn validate(env: napi_env, napi_val: napi_value) -> Result<napi_value>
Source§impl ValidateNapiValue for &mut [u8]
impl ValidateNapiValue for &mut [u8]
unsafe fn validate(env: napi_env, napi_val: napi_value) -> Result<napi_value>
Source§impl ValidateNapiValue for &mut [u16]
impl ValidateNapiValue for &mut [u16]
unsafe fn validate(env: napi_env, napi_val: napi_value) -> Result<napi_value>
Source§impl ValidateNapiValue for &mut [u32]
impl ValidateNapiValue for &mut [u32]
unsafe fn validate(env: napi_env, napi_val: napi_value) -> Result<napi_value>
Source§impl ValidateNapiValue for &mut [u64]
impl ValidateNapiValue for &mut [u64]
unsafe fn validate(env: napi_env, napi_val: napi_value) -> Result<napi_value>
impl ValidateNapiValue for OsString
impl ValidateNapiValue for PathBuf
impl ValidateNapiValue for String
impl ValidateNapiValue for bool
impl ValidateNapiValue for f64
impl ValidateNapiValue for i8
impl ValidateNapiValue for i16
impl ValidateNapiValue for i32
impl ValidateNapiValue for i64
impl ValidateNapiValue for u8
impl ValidateNapiValue for u16
impl ValidateNapiValue for u32
impl<K: From<String> + Eq + Hash, V: FromNapiValue, S> ValidateNapiValue for HashMap<K, V, S>
impl<K: From<String> + Hash + Eq, V: FromNapiValue> ValidateNapiValue for IndexMap<K, V>
Available on crate feature
object_indexmap only.impl<K: From<String> + Ord, V: FromNapiValue> ValidateNapiValue for BTreeMap<K, V>
impl<T0: FromNapiValue, T1: FromNapiValue, T2: FromNapiValue, T3: FromNapiValue, T4: FromNapiValue, T5: FromNapiValue, T6: FromNapiValue, T7: FromNapiValue, T8: FromNapiValue, T9: FromNapiValue, T10: FromNapiValue, T11: FromNapiValue, T12: FromNapiValue, T13: FromNapiValue, T14: FromNapiValue, T15: FromNapiValue> ValidateNapiValue for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15)
impl<T1: FromNapiValue, T2: FromNapiValue, T3: FromNapiValue, T4: FromNapiValue, T5: FromNapiValue, T6: FromNapiValue, T7: FromNapiValue, T8: FromNapiValue, T9: FromNapiValue, T10: FromNapiValue, T11: FromNapiValue, T12: FromNapiValue, T13: FromNapiValue, T14: FromNapiValue, T15: FromNapiValue> ValidateNapiValue for (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15)
impl<T2: FromNapiValue, T3: FromNapiValue, T4: FromNapiValue, T5: FromNapiValue, T6: FromNapiValue, T7: FromNapiValue, T8: FromNapiValue, T9: FromNapiValue, T10: FromNapiValue, T11: FromNapiValue, T12: FromNapiValue, T13: FromNapiValue, T14: FromNapiValue, T15: FromNapiValue> ValidateNapiValue for (T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15)
impl<T3: FromNapiValue, T4: FromNapiValue, T5: FromNapiValue, T6: FromNapiValue, T7: FromNapiValue, T8: FromNapiValue, T9: FromNapiValue, T10: FromNapiValue, T11: FromNapiValue, T12: FromNapiValue, T13: FromNapiValue, T14: FromNapiValue, T15: FromNapiValue> ValidateNapiValue for (T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15)
impl<T4: FromNapiValue, T5: FromNapiValue, T6: FromNapiValue, T7: FromNapiValue, T8: FromNapiValue, T9: FromNapiValue, T10: FromNapiValue, T11: FromNapiValue, T12: FromNapiValue, T13: FromNapiValue, T14: FromNapiValue, T15: FromNapiValue> ValidateNapiValue for (T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15)
impl<T5: FromNapiValue, T6: FromNapiValue, T7: FromNapiValue, T8: FromNapiValue, T9: FromNapiValue, T10: FromNapiValue, T11: FromNapiValue, T12: FromNapiValue, T13: FromNapiValue, T14: FromNapiValue, T15: FromNapiValue> ValidateNapiValue for (T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15)
impl<T6: FromNapiValue, T7: FromNapiValue, T8: FromNapiValue, T9: FromNapiValue, T10: FromNapiValue, T11: FromNapiValue, T12: FromNapiValue, T13: FromNapiValue, T14: FromNapiValue, T15: FromNapiValue> ValidateNapiValue for (T6, T7, T8, T9, T10, T11, T12, T13, T14, T15)
impl<T7: FromNapiValue, T8: FromNapiValue, T9: FromNapiValue, T10: FromNapiValue, T11: FromNapiValue, T12: FromNapiValue, T13: FromNapiValue, T14: FromNapiValue, T15: FromNapiValue> ValidateNapiValue for (T7, T8, T9, T10, T11, T12, T13, T14, T15)
impl<T8: FromNapiValue, T9: FromNapiValue, T10: FromNapiValue, T11: FromNapiValue, T12: FromNapiValue, T13: FromNapiValue, T14: FromNapiValue, T15: FromNapiValue> ValidateNapiValue for (T8, T9, T10, T11, T12, T13, T14, T15)
impl<T9: FromNapiValue, T10: FromNapiValue, T11: FromNapiValue, T12: FromNapiValue, T13: FromNapiValue, T14: FromNapiValue, T15: FromNapiValue> ValidateNapiValue for (T9, T10, T11, T12, T13, T14, T15)
impl<T10: FromNapiValue, T11: FromNapiValue, T12: FromNapiValue, T13: FromNapiValue, T14: FromNapiValue, T15: FromNapiValue> ValidateNapiValue for (T10, T11, T12, T13, T14, T15)
impl<T11: FromNapiValue, T12: FromNapiValue, T13: FromNapiValue, T14: FromNapiValue, T15: FromNapiValue> ValidateNapiValue for (T11, T12, T13, T14, T15)
impl<T12: FromNapiValue, T13: FromNapiValue, T14: FromNapiValue, T15: FromNapiValue> ValidateNapiValue for (T12, T13, T14, T15)
impl<T13: FromNapiValue, T14: FromNapiValue, T15: FromNapiValue> ValidateNapiValue for (T13, T14, T15)
impl<T14: FromNapiValue, T15: FromNapiValue> ValidateNapiValue for (T14, T15)
impl<T15: FromNapiValue> ValidateNapiValue for (T15,)
Source§impl<T: ValidateNapiValue> ValidateNapiValue for Arc<T>
impl<T: ValidateNapiValue> ValidateNapiValue for Arc<T>
unsafe fn validate(env: napi_env, napi_val: napi_value) -> Result<napi_value>
Source§impl<T: ValidateNapiValue> ValidateNapiValue for Mutex<T>
impl<T: ValidateNapiValue> ValidateNapiValue for Mutex<T>
unsafe fn validate(env: napi_env, napi_val: napi_value) -> Result<napi_value>
Source§impl<T: ValidateNapiValue> ValidateNapiValue for Option<T>
impl<T: ValidateNapiValue> ValidateNapiValue for Option<T>
unsafe fn validate(env: napi_env, napi_val: napi_value) -> Result<napi_value>
Source§impl<T: ValidateNapiValue> ValidateNapiValue for Rc<T>
impl<T: ValidateNapiValue> ValidateNapiValue for Rc<T>
unsafe fn validate(env: napi_env, napi_val: napi_value) -> Result<napi_value>
Source§impl<T> ValidateNapiValue for Vec<T>where
T: FromNapiValue,
impl<T> ValidateNapiValue for Vec<T>where
T: FromNapiValue,
unsafe fn validate(env: napi_env, napi_val: napi_value) -> Result<napi_value>
Source§impl<Tz: TimeZone> ValidateNapiValue for DateTime<Tz>
impl<Tz: TimeZone> ValidateNapiValue for DateTime<Tz>
unsafe fn validate(env: napi_env, napi_val: napi_value) -> Result<napi_value>
impl<V: FromNapiValue, S> ValidateNapiValue for HashSet<V, S>
impl<V: FromNapiValue, S> ValidateNapiValue for IndexSet<V, S>
Available on crate feature
object_indexmap only.impl<V: FromNapiValue> ValidateNapiValue for BTreeSet<V>
Implementors§
impl ValidateNapiValue for BigInt
impl ValidateNapiValue for BigInt64Array
impl ValidateNapiValue for BigInt64ArraySlice<'_>
impl ValidateNapiValue for BigUint64Array
impl ValidateNapiValue for BigUint64ArraySlice<'_>
impl ValidateNapiValue for Buffer
impl ValidateNapiValue for BufferSlice<'_>
impl ValidateNapiValue for Float32Array
impl ValidateNapiValue for Float32ArraySlice<'_>
impl ValidateNapiValue for Float64Array
impl ValidateNapiValue for Float64ArraySlice<'_>
impl ValidateNapiValue for Int8Array
impl ValidateNapiValue for Int8ArraySlice<'_>
impl ValidateNapiValue for Int16Array
impl ValidateNapiValue for Int16ArraySlice<'_>
impl ValidateNapiValue for Int32Array
impl ValidateNapiValue for Int32ArraySlice<'_>
impl ValidateNapiValue for JsArrayBuffer
impl ValidateNapiValue for JsBigInt
impl ValidateNapiValue for JsBoolean
impl ValidateNapiValue for JsBuffer
impl ValidateNapiValue for JsDate<'_>
impl ValidateNapiValue for JsFunction
impl ValidateNapiValue for JsNull
Available on crate feature
compat-mode only.