pub struct SimpleWalletBaseChangePublicKeyArgs<'a> {
pub state_ptr: NonNull<<WalletState as IoType>::PointerType>,
pub state_size: u32,
pub state_capacity: u32,
pub public_key_ptr: NonNull<<[u8; 32] as IoType>::PointerType>,
pub public_key_size: u32,
pub public_key_capacity: u32,
pub ok_result_ptr: NonNull<WalletState>,
/* private fields */
}Expand description
Data structure containing expected input for external method invocation, eventually calling simple_wallet_base_change_public_key() on the other side by the host.
This can be used with Env, though there are helper methods on this provided by extension trait that allow not dealing with this struct directly in simpler cases.
Fields§
§state_ptr: NonNull<<WalletState as IoType>::PointerType>§state_size: u32Size of the contents state_ptr points to
state_capacity: u32Capacity of the contents state_ptr points to
public_key_ptr: NonNull<<[u8; 32] as IoType>::PointerType>§public_key_size: u32Size of the contents public_key_ptr points to
public_key_capacity: u32Capacity of the contents public_key_ptr points to
ok_result_ptr: NonNull<WalletState>Implementations§
Source§impl<'a> SimpleWalletBaseChangePublicKeyArgs<'a>
impl<'a> SimpleWalletBaseChangePublicKeyArgs<'a>
Sourcepub fn new(
state: &'a WalletState,
public_key: &'a [u8; 32],
ok_result: &'a mut MaybeUninit<WalletState>,
) -> Self
pub fn new( state: &'a WalletState, public_key: &'a [u8; 32], ok_result: &'a mut MaybeUninit<WalletState>, ) -> Self
Create a new instance.
NOTE: Make sure to query updated sizes of arguments after calling the contract.
Trait Implementations§
Source§impl<'a> Debug for SimpleWalletBaseChangePublicKeyArgs<'a>
impl<'a> Debug for SimpleWalletBaseChangePublicKeyArgs<'a>
Source§impl ExternalArgs for SimpleWalletBaseChangePublicKeyArgs<'_>
impl ExternalArgs for SimpleWalletBaseChangePublicKeyArgs<'_>
Auto Trait Implementations§
impl<'a> Freeze for SimpleWalletBaseChangePublicKeyArgs<'a>
impl<'a> RefUnwindSafe for SimpleWalletBaseChangePublicKeyArgs<'a>
impl<'a> !Send for SimpleWalletBaseChangePublicKeyArgs<'a>
impl<'a> !Sync for SimpleWalletBaseChangePublicKeyArgs<'a>
impl<'a> Unpin for SimpleWalletBaseChangePublicKeyArgs<'a>
impl<'a> UnwindSafe for SimpleWalletBaseChangePublicKeyArgs<'a>
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> 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 more