ab_system_contract_code::ffi::read

Struct InternalArgs

Source
#[repr(C)]
pub struct InternalArgs { pub contract_code_address_ptr: NonNull<Address>, pub contract_code_ptr: NonNull<<<Code as Contract>::Slot as IoType>::PointerType>, pub contract_code_size: NonNull<u32>, pub code_ptr: NonNull<<VariableBytes<MAX_CODE_SIZE> as IoType>::PointerType>, pub code_size: *mut u32, pub code_capacity: NonNull<u32>, pub ok_result_ptr: NonNull<()>, pub ok_result_size: *mut u32, pub ok_result_capacity: NonNull<u32>, }
Expand description

Data structure containing expected input to read(), it is used internally by the contract, there should be no need to construct it explicitly except maybe in contract’s own tests

Fields§

§contract_code_address_ptr: NonNull<Address>§contract_code_ptr: NonNull<<<Code as Contract>::Slot as IoType>::PointerType>§contract_code_size: NonNull<u32>

Size of the contents contract_code_ptr points to

§code_ptr: NonNull<<VariableBytes<MAX_CODE_SIZE> as IoType>::PointerType>§code_size: *mut u32

Size of the contents code_ptr points to

§code_capacity: NonNull<u32>

Capacity of the allocated memory code_ptr points to

§ok_result_ptr: NonNull<()>§ok_result_size: *mut u32

The size of the contents ok_result_ptr points to

§ok_result_capacity: NonNull<u32>

Capacity of the allocated memory ok_result_ptr points to

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.