[][src]Trait elrond_wasm::ContractIOApi

pub trait ContractIOApi<BigInt, BigUint> {
    fn get_num_arguments(&self) -> i32;
fn check_not_payable(&self) -> bool;
fn get_argument_vec(&self, arg_index: i32) -> Vec<u8>;
fn get_argument_bytes32(&self, arg_index: i32) -> [u8; 32];
fn get_argument_big_int(&self, arg_id: i32) -> BigInt;
fn get_argument_big_uint(&self, arg_id: i32) -> BigUint;
fn get_argument_i64(&self, arg_id: i32) -> i64;
fn finish_vec(&self, v: &Vec<u8>);
fn finish_bytes32(&self, bytes: &[u8; 32]);
fn finish_big_int(&self, b: &BigInt);
fn finish_big_uint(&self, b: &BigUint);
fn finish_i64(&self, value: i64);
fn signal_error_raw(&self, message_ptr: *const u8, message_len: usize);
fn write_log(&self, topics: &[[u8; 32]], data: &[u8]); fn check_num_arguments(&self, expected: i32) -> bool { ... }
fn get_argument_address(&self, arg_index: i32) -> Address { ... }
fn signal_error(&self, message: &str) { ... } }

Interface to only be used by code generated by the macros. The smart contract code doesn't have access to these methods directly.

Required methods

fn get_num_arguments(&self) -> i32

fn check_not_payable(&self) -> bool

fn get_argument_vec(&self, arg_index: i32) -> Vec<u8>

fn get_argument_bytes32(&self, arg_index: i32) -> [u8; 32]

fn get_argument_big_int(&self, arg_id: i32) -> BigInt

fn get_argument_big_uint(&self, arg_id: i32) -> BigUint

fn get_argument_i64(&self, arg_id: i32) -> i64

fn finish_vec(&self, v: &Vec<u8>)

fn finish_bytes32(&self, bytes: &[u8; 32])

fn finish_big_int(&self, b: &BigInt)

fn finish_big_uint(&self, b: &BigUint)

fn finish_i64(&self, value: i64)

fn signal_error_raw(&self, message_ptr: *const u8, message_len: usize)

fn write_log(&self, topics: &[[u8; 32]], data: &[u8])

Loading content...

Provided methods

fn check_num_arguments(&self, expected: i32) -> bool

fn get_argument_address(&self, arg_index: i32) -> Address

fn signal_error(&self, message: &str)

Loading content...

Implementors

Loading content...