#[repr(C)]pub struct Code;
Implementations§
Source§impl Code
impl Code
Sourcepub fn deploy(
env: &mut Env,
code: &VariableBytes<MAX_CODE_SIZE>,
) -> Result<Address, ContractError>
pub fn deploy( env: &mut Env, code: &VariableBytes<MAX_CODE_SIZE>, ) -> Result<Address, ContractError>
Deploy a new contract with specified code
Sourcepub fn store(
env: &mut Env,
(address, contract_code): (&Address, &mut VariableBytes<MAX_CODE_SIZE>),
new_code: &VariableBytes<MAX_CODE_SIZE>,
) -> Result<(), ContractError>
pub fn store( env: &mut Env, (address, contract_code): (&Address, &mut VariableBytes<MAX_CODE_SIZE>), new_code: &VariableBytes<MAX_CODE_SIZE>, ) -> Result<(), ContractError>
Store contact’s code overriding previous code that might have been there.
Updates can only be done by the contract itself with direct calls.
Sourcepub fn read(
contract_code: &VariableBytes<MAX_CODE_SIZE>,
code: &mut VariableBytes<MAX_CODE_SIZE>,
) -> Result<(), ContractError>
pub fn read( contract_code: &VariableBytes<MAX_CODE_SIZE>, code: &mut VariableBytes<MAX_CODE_SIZE>, ) -> Result<(), ContractError>
Read contract’s code
Trait Implementations§
Source§impl Contract for Code
impl Contract for Code
Source§const MAIN_CONTRACT_METADATA: &[u8]
const MAIN_CONTRACT_METADATA: &[u8]
Main contract metadata, see
ContractMetadataKind
for encoding details. Read moreSource§const CRATE_NAME: &str = "ab-system-contract-code"
const CRATE_NAME: &str = "ab-system-contract-code"
Name of the crate where contact is located. Read more
Source§type Slot = VariableBytes<MAX_CODE_SIZE>
type Slot = VariableBytes<MAX_CODE_SIZE>
Slot type used by this contract
Source§impl TrivialType for Code
impl TrivialType for Code
Source§const METADATA: &[u8]
const METADATA: &[u8]
Data structure metadata in binary form, describing shape and types of the contents, see
IoTypeMetadataKind
for encoding details.const SIZE: u32 = _
Source§unsafe fn from_bytes(bytes: &[u8]) -> Option<&Self>
unsafe fn from_bytes(bytes: &[u8]) -> Option<&Self>
Create a reference to a type, which is represented by provided memory. Read more
impl Copy for Code
Auto Trait Implementations§
impl Freeze for Code
impl RefUnwindSafe for Code
impl Send for Code
impl Sync for Code
impl Unpin for Code
impl UnwindSafe for Code
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> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> IoType for Twhere
T: TrivialType,
impl<T> IoType for Twhere
T: TrivialType,
Source§const METADATA: &'static [u8] = T::METADATA
const METADATA: &'static [u8] = T::METADATA
Data structure metadata in binary form, describing shape and types of the contents, see
IoTypeMetadataKind
for encoding detailsSource§type PointerType = T
type PointerType = T
Pointer with trivial type that this
IoType
representsSource§unsafe fn size_ptr(&self) -> impl Deref<Target = NonNull<u32>>
unsafe fn size_ptr(&self) -> impl Deref<Target = NonNull<u32>>
Pointer to the number of bytes that are currently used to store data. Read more
Source§unsafe fn size_mut_ptr(&mut self) -> impl DerefMut
unsafe fn size_mut_ptr(&mut self) -> impl DerefMut
An exclusive pointer to the number of bytes that are currently used to store data. Read more
Source§unsafe fn capacity_ptr(&self) -> impl Deref<Target = NonNull<u32>>
unsafe fn capacity_ptr(&self) -> impl Deref<Target = NonNull<u32>>
Number of bytes are allocated right now Read more
Source§unsafe fn from_ptr<'a>(
ptr: &'a NonNull<<T as IoType>::PointerType>,
size: &'a u32,
capacity: u32,
) -> impl Deref<Target = T> + 'a
unsafe fn from_ptr<'a>( ptr: &'a NonNull<<T as IoType>::PointerType>, size: &'a u32, capacity: u32, ) -> impl Deref<Target = T> + 'a
Create a reference to a type, which is represented by provided memory. Read more
Source§unsafe fn from_mut_ptr<'a>(
ptr: &'a mut NonNull<<T as IoType>::PointerType>,
_size: &'a mut *mut u32,
capacity: u32,
) -> impl DerefMut + 'a
unsafe fn from_mut_ptr<'a>( ptr: &'a mut NonNull<<T as IoType>::PointerType>, _size: &'a mut *mut u32, capacity: u32, ) -> impl DerefMut + 'a
Create a mutable reference to a type, which is represented by provided memory. Read more
Source§unsafe fn as_ptr(
&self,
) -> impl Deref<Target = NonNull<<T as IoType>::PointerType>>
unsafe fn as_ptr( &self, ) -> impl Deref<Target = NonNull<<T as IoType>::PointerType>>
Get a raw pointer to the underlying data with no checks. Read more
Source§unsafe fn as_mut_ptr(&mut self) -> impl DerefMut
unsafe fn as_mut_ptr(&mut self) -> impl DerefMut
Get an exclusive raw pointer to the underlying data with no checks. Read more