#[repr(C)]pub struct StateInitializeArgs {
pub contract_state_ptr: NonNull<Address>,
pub state_ptr: NonNull<<VariableBytes<RECOMMENDED_STATE_CAPACITY> as IoType>::PointerType>,
pub state_size: NonNull<u32>,
}
Expand description
Data structure containing expected input for external method invocation, eventually calling state_initialize()
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§
§contract_state_ptr: NonNull<Address>
§state_ptr: NonNull<<VariableBytes<RECOMMENDED_STATE_CAPACITY> as IoType>::PointerType>
§state_size: NonNull<u32>
Size of the contents state_ptr
points to
Implementations§
Source§impl StateInitializeArgs
impl StateInitializeArgs
Sourcepub fn new(
contract_state: &Address,
state: &VariableBytes<RECOMMENDED_STATE_CAPACITY>,
) -> Self
pub fn new( contract_state: &Address, state: &VariableBytes<RECOMMENDED_STATE_CAPACITY>, ) -> Self
Create a new instance
Trait Implementations§
Source§impl Debug for StateInitializeArgs
impl Debug for StateInitializeArgs
Source§impl ExternalArgs for StateInitializeArgs
impl ExternalArgs for StateInitializeArgs
Source§const FINGERPRINT: MethodFingerprint
const FINGERPRINT: MethodFingerprint
Fingerprint of the method being called
Auto Trait Implementations§
impl Freeze for StateInitializeArgs
impl RefUnwindSafe for StateInitializeArgs
impl !Send for StateInitializeArgs
impl !Sync for StateInitializeArgs
impl Unpin for StateInitializeArgs
impl UnwindSafe for StateInitializeArgs
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