pub struct SecureWasmHashContext { /* private fields */ }Expand description
Secure WASM Hash Context
This context provides secure hash operations with:
- Consistent error handling using Result<T, JsValue>
- Security validation for all inputs
- Protection against timing attacks
- Memory safety with automatic cleanup
Implementations§
Trait Implementations§
Source§impl From<SecureWasmHashContext> for JsValue
impl From<SecureWasmHashContext> for JsValue
Source§fn from(value: SecureWasmHashContext) -> JsValue
fn from(value: SecureWasmHashContext) -> JsValue
Converts to this type from the input type.
Source§impl FromWasmAbi for SecureWasmHashContext
impl FromWasmAbi for SecureWasmHashContext
Source§type Abi = WasmPtr<WasmRefCell<SecureWasmHashContext>>
type Abi = WasmPtr<WasmRefCell<SecureWasmHashContext>>
The Wasm ABI type that this converts from when coming back out from the
ABI boundary.
Source§unsafe fn from_abi(
js: <SecureWasmHashContext as FromWasmAbi>::Abi,
) -> SecureWasmHashContext
unsafe fn from_abi( js: <SecureWasmHashContext as FromWasmAbi>::Abi, ) -> SecureWasmHashContext
Source§impl IntoWasmAbi for SecureWasmHashContext
impl IntoWasmAbi for SecureWasmHashContext
Source§type Abi = WasmPtr<WasmRefCell<SecureWasmHashContext>>
type Abi = WasmPtr<WasmRefCell<SecureWasmHashContext>>
The Wasm ABI type that this converts into when crossing the ABI
boundary.
Source§fn into_abi(self) -> <SecureWasmHashContext as IntoWasmAbi>::Abi
fn into_abi(self) -> <SecureWasmHashContext as IntoWasmAbi>::Abi
Convert
self into Self::Abi so that it can be sent across the wasm
ABI boundary.Source§impl LongRefFromWasmAbi for SecureWasmHashContext
impl LongRefFromWasmAbi for SecureWasmHashContext
Source§type Abi = WasmPtr<WasmRefCell<SecureWasmHashContext>>
type Abi = WasmPtr<WasmRefCell<SecureWasmHashContext>>
Same as
RefFromWasmAbi::AbiSource§type Anchor = RcRef<SecureWasmHashContext>
type Anchor = RcRef<SecureWasmHashContext>
Same as
RefFromWasmAbi::AnchorSource§unsafe fn long_ref_from_abi(
js: <SecureWasmHashContext as LongRefFromWasmAbi>::Abi,
) -> <SecureWasmHashContext as LongRefFromWasmAbi>::Anchor
unsafe fn long_ref_from_abi( js: <SecureWasmHashContext as LongRefFromWasmAbi>::Abi, ) -> <SecureWasmHashContext as LongRefFromWasmAbi>::Anchor
Same as
RefFromWasmAbi::ref_from_abiSource§impl OptionFromWasmAbi for SecureWasmHashContext
impl OptionFromWasmAbi for SecureWasmHashContext
Source§fn is_none(abi: &<SecureWasmHashContext as FromWasmAbi>::Abi) -> bool
fn is_none(abi: &<SecureWasmHashContext as FromWasmAbi>::Abi) -> bool
Tests whether the argument is a “none” instance. If so it will be
deserialized as
None, and otherwise it will be passed to
FromWasmAbi.Source§impl OptionIntoWasmAbi for SecureWasmHashContext
impl OptionIntoWasmAbi for SecureWasmHashContext
Source§fn none() -> <SecureWasmHashContext as IntoWasmAbi>::Abi
fn none() -> <SecureWasmHashContext as IntoWasmAbi>::Abi
Returns an ABI instance indicating “none”, which JS will interpret as
the
None branch of this option. Read moreSource§impl RefFromWasmAbi for SecureWasmHashContext
impl RefFromWasmAbi for SecureWasmHashContext
Source§type Abi = WasmPtr<WasmRefCell<SecureWasmHashContext>>
type Abi = WasmPtr<WasmRefCell<SecureWasmHashContext>>
The Wasm ABI type references to
Self are recovered from.Source§type Anchor = RcRef<SecureWasmHashContext>
type Anchor = RcRef<SecureWasmHashContext>
The type that holds the reference to
Self for the duration of the
invocation of the function that has an &Self parameter. This is
required to ensure that the lifetimes don’t persist beyond one function
call, and so that they remain anonymous.Source§unsafe fn ref_from_abi(
js: <SecureWasmHashContext as RefFromWasmAbi>::Abi,
) -> <SecureWasmHashContext as RefFromWasmAbi>::Anchor
unsafe fn ref_from_abi( js: <SecureWasmHashContext as RefFromWasmAbi>::Abi, ) -> <SecureWasmHashContext as RefFromWasmAbi>::Anchor
Source§impl RefMutFromWasmAbi for SecureWasmHashContext
impl RefMutFromWasmAbi for SecureWasmHashContext
Source§type Abi = WasmPtr<WasmRefCell<SecureWasmHashContext>>
type Abi = WasmPtr<WasmRefCell<SecureWasmHashContext>>
Same as
RefFromWasmAbi::AbiSource§type Anchor = RcRefMut<SecureWasmHashContext>
type Anchor = RcRefMut<SecureWasmHashContext>
Same as
RefFromWasmAbi::AnchorSource§unsafe fn ref_mut_from_abi(
js: <SecureWasmHashContext as RefMutFromWasmAbi>::Abi,
) -> <SecureWasmHashContext as RefMutFromWasmAbi>::Anchor
unsafe fn ref_mut_from_abi( js: <SecureWasmHashContext as RefMutFromWasmAbi>::Abi, ) -> <SecureWasmHashContext as RefMutFromWasmAbi>::Anchor
Same as
RefFromWasmAbi::ref_from_abiSource§impl TryFromJsValue for SecureWasmHashContext
impl TryFromJsValue for SecureWasmHashContext
Source§fn try_from_js_value(value: JsValue) -> Result<SecureWasmHashContext, JsValue>
fn try_from_js_value(value: JsValue) -> Result<SecureWasmHashContext, JsValue>
Performs the conversion.
Source§fn try_from_js_value_ref(value: &JsValue) -> Option<SecureWasmHashContext>
fn try_from_js_value_ref(value: &JsValue) -> Option<SecureWasmHashContext>
Performs the conversion.
Source§impl VectorFromWasmAbi for SecureWasmHashContext
impl VectorFromWasmAbi for SecureWasmHashContext
type Abi = <Box<[JsValue]> as FromWasmAbi>::Abi
unsafe fn vector_from_abi( js: <SecureWasmHashContext as VectorFromWasmAbi>::Abi, ) -> Box<[SecureWasmHashContext]>
Source§impl VectorIntoWasmAbi for SecureWasmHashContext
impl VectorIntoWasmAbi for SecureWasmHashContext
type Abi = <Box<[JsValue]> as IntoWasmAbi>::Abi
fn vector_into_abi( vector: Box<[SecureWasmHashContext]>, ) -> <SecureWasmHashContext as VectorIntoWasmAbi>::Abi
Auto Trait Implementations§
impl Freeze for SecureWasmHashContext
impl !RefUnwindSafe for SecureWasmHashContext
impl Send for SecureWasmHashContext
impl Sync for SecureWasmHashContext
impl Unpin for SecureWasmHashContext
impl UnsafeUnpin for SecureWasmHashContext
impl !UnwindSafe for SecureWasmHashContext
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§impl<T> Pointable for T
impl<T> Pointable for T
Source§impl<T> ReturnWasmAbi for Twhere
T: IntoWasmAbi,
impl<T> ReturnWasmAbi for Twhere
T: IntoWasmAbi,
Source§type Abi = <T as IntoWasmAbi>::Abi
type Abi = <T as IntoWasmAbi>::Abi
Same as
IntoWasmAbi::AbiSource§fn return_abi(self) -> <T as ReturnWasmAbi>::Abi
fn return_abi(self) -> <T as ReturnWasmAbi>::Abi
Same as
IntoWasmAbi::into_abi, except that it may throw and never
return in the case of Err.