[][src]Trait near_sdk::BlockchainInterface

pub trait BlockchainInterface {
    pub unsafe fn read_register(&self, register_id: u64, ptr: u64);
pub unsafe fn register_len(&self, register_id: u64) -> u64;
pub unsafe fn current_account_id(&self, register_id: u64);
pub unsafe fn signer_account_id(&self, register_id: u64);
pub unsafe fn signer_account_pk(&self, register_id: u64);
pub unsafe fn predecessor_account_id(&self, register_id: u64);
pub unsafe fn input(&self, register_id: u64);
pub unsafe fn block_index(&self) -> u64;
pub unsafe fn block_timestamp(&self) -> u64;
pub unsafe fn epoch_height(&self) -> u64;
pub unsafe fn storage_usage(&self) -> u64;
pub unsafe fn account_balance(&self, balance_ptr: u64);
pub unsafe fn account_locked_balance(&self, balance_ptr: u64);
pub unsafe fn attached_deposit(&self, balance_ptr: u64);
pub unsafe fn prepaid_gas(&self) -> u64;
pub unsafe fn used_gas(&self) -> u64;
pub unsafe fn random_seed(&self, register_id: u64);
pub unsafe fn sha256(
        &self,
        value_len: u64,
        value_ptr: u64,
        register_id: u64
    );
pub unsafe fn keccak256(
        &self,
        value_len: u64,
        value_ptr: u64,
        register_id: u64
    );
pub unsafe fn keccak512(
        &self,
        value_len: u64,
        value_ptr: u64,
        register_id: u64
    );
pub unsafe fn value_return(&self, value_len: u64, value_ptr: u64);
pub unsafe fn panic(&self);
pub unsafe fn panic_utf8(&self, len: u64, ptr: u64);
pub unsafe fn log_utf8(&self, len: u64, ptr: u64);
pub unsafe fn log_utf16(&self, len: u64, ptr: u64);
pub unsafe fn promise_create(
        &self,
        account_id_len: u64,
        account_id_ptr: u64,
        method_name_len: u64,
        method_name_ptr: u64,
        arguments_len: u64,
        arguments_ptr: u64,
        amount_ptr: u64,
        gas: u64
    ) -> u64;
pub unsafe fn promise_then(
        &self,
        promise_index: u64,
        account_id_len: u64,
        account_id_ptr: u64,
        method_name_len: u64,
        method_name_ptr: u64,
        arguments_len: u64,
        arguments_ptr: u64,
        amount_ptr: u64,
        gas: u64
    ) -> u64;
pub unsafe fn promise_and(
        &self,
        promise_idx_ptr: u64,
        promise_idx_count: u64
    ) -> u64;
pub unsafe fn promise_batch_create(
        &self,
        account_id_len: u64,
        account_id_ptr: u64
    ) -> u64;
pub unsafe fn promise_batch_then(
        &self,
        promise_index: u64,
        account_id_len: u64,
        account_id_ptr: u64
    ) -> u64;
pub unsafe fn promise_batch_action_create_account(&self, promise_index: u64);
pub unsafe fn promise_batch_action_deploy_contract(
        &self,
        promise_index: u64,
        code_len: u64,
        code_ptr: u64
    );
pub unsafe fn promise_batch_action_function_call(
        &self,
        promise_index: u64,
        method_name_len: u64,
        method_name_ptr: u64,
        arguments_len: u64,
        arguments_ptr: u64,
        amount_ptr: u64,
        gas: u64
    );
pub unsafe fn promise_batch_action_transfer(
        &self,
        promise_index: u64,
        amount_ptr: u64
    );
pub unsafe fn promise_batch_action_stake(
        &self,
        promise_index: u64,
        amount_ptr: u64,
        public_key_len: u64,
        public_key_ptr: u64
    );
pub unsafe fn promise_batch_action_add_key_with_full_access(
        &self,
        promise_index: u64,
        public_key_len: u64,
        public_key_ptr: u64,
        nonce: u64
    );
pub unsafe fn promise_batch_action_add_key_with_function_call(
        &self,
        promise_index: u64,
        public_key_len: u64,
        public_key_ptr: u64,
        nonce: u64,
        allowance_ptr: u64,
        receiver_id_len: u64,
        receiver_id_ptr: u64,
        method_names_len: u64,
        method_names_ptr: u64
    );
pub unsafe fn promise_batch_action_delete_key(
        &self,
        promise_index: u64,
        public_key_len: u64,
        public_key_ptr: u64
    );
pub unsafe fn promise_batch_action_delete_account(
        &self,
        promise_index: u64,
        beneficiary_id_len: u64,
        beneficiary_id_ptr: u64
    );
pub unsafe fn promise_results_count(&self) -> u64;
pub unsafe fn promise_result(
        &self,
        result_idx: u64,
        register_id: u64
    ) -> u64;
pub unsafe fn promise_return(&self, promise_id: u64);
pub unsafe fn storage_write(
        &self,
        key_len: u64,
        key_ptr: u64,
        value_len: u64,
        value_ptr: u64,
        register_id: u64
    ) -> u64;
pub unsafe fn storage_read(
        &self,
        key_len: u64,
        key_ptr: u64,
        register_id: u64
    ) -> u64;
pub unsafe fn storage_remove(
        &self,
        key_len: u64,
        key_ptr: u64,
        register_id: u64
    ) -> u64;
pub unsafe fn storage_has_key(&self, key_len: u64, key_ptr: u64) -> u64;
pub unsafe fn validator_stake(
        &self,
        account_id_len: u64,
        account_id_ptr: u64,
        stake_ptr: u64
    );
pub unsafe fn validator_total_stake(&self, stake_ptr: u64); pub fn as_mut_mocked_blockchain(&mut self) -> Option<&mut MockedBlockchain> { ... }
pub fn as_mocked_blockchain(&self) -> Option<&MockedBlockchain> { ... } }

A low-level interface of either real or mocked blockchain that contract interacts with.

Required methods

pub unsafe fn read_register(&self, register_id: u64, ptr: u64)[src]

pub unsafe fn register_len(&self, register_id: u64) -> u64[src]

pub unsafe fn current_account_id(&self, register_id: u64)[src]

pub unsafe fn signer_account_id(&self, register_id: u64)[src]

pub unsafe fn signer_account_pk(&self, register_id: u64)[src]

pub unsafe fn predecessor_account_id(&self, register_id: u64)[src]

pub unsafe fn input(&self, register_id: u64)[src]

pub unsafe fn block_index(&self) -> u64[src]

pub unsafe fn block_timestamp(&self) -> u64[src]

pub unsafe fn epoch_height(&self) -> u64[src]

pub unsafe fn storage_usage(&self) -> u64[src]

pub unsafe fn account_balance(&self, balance_ptr: u64)[src]

pub unsafe fn account_locked_balance(&self, balance_ptr: u64)[src]

pub unsafe fn attached_deposit(&self, balance_ptr: u64)[src]

pub unsafe fn prepaid_gas(&self) -> u64[src]

pub unsafe fn used_gas(&self) -> u64[src]

pub unsafe fn random_seed(&self, register_id: u64)[src]

pub unsafe fn sha256(&self, value_len: u64, value_ptr: u64, register_id: u64)[src]

pub unsafe fn keccak256(&self, value_len: u64, value_ptr: u64, register_id: u64)[src]

pub unsafe fn keccak512(&self, value_len: u64, value_ptr: u64, register_id: u64)[src]

pub unsafe fn value_return(&self, value_len: u64, value_ptr: u64)[src]

pub unsafe fn panic(&self)[src]

pub unsafe fn panic_utf8(&self, len: u64, ptr: u64)[src]

pub unsafe fn log_utf8(&self, len: u64, ptr: u64)[src]

pub unsafe fn log_utf16(&self, len: u64, ptr: u64)[src]

pub unsafe fn promise_create(
    &self,
    account_id_len: u64,
    account_id_ptr: u64,
    method_name_len: u64,
    method_name_ptr: u64,
    arguments_len: u64,
    arguments_ptr: u64,
    amount_ptr: u64,
    gas: u64
) -> u64
[src]

pub unsafe fn promise_then(
    &self,
    promise_index: u64,
    account_id_len: u64,
    account_id_ptr: u64,
    method_name_len: u64,
    method_name_ptr: u64,
    arguments_len: u64,
    arguments_ptr: u64,
    amount_ptr: u64,
    gas: u64
) -> u64
[src]

pub unsafe fn promise_and(
    &self,
    promise_idx_ptr: u64,
    promise_idx_count: u64
) -> u64
[src]

pub unsafe fn promise_batch_create(
    &self,
    account_id_len: u64,
    account_id_ptr: u64
) -> u64
[src]

pub unsafe fn promise_batch_then(
    &self,
    promise_index: u64,
    account_id_len: u64,
    account_id_ptr: u64
) -> u64
[src]

pub unsafe fn promise_batch_action_create_account(&self, promise_index: u64)[src]

pub unsafe fn promise_batch_action_deploy_contract(
    &self,
    promise_index: u64,
    code_len: u64,
    code_ptr: u64
)
[src]

pub unsafe fn promise_batch_action_function_call(
    &self,
    promise_index: u64,
    method_name_len: u64,
    method_name_ptr: u64,
    arguments_len: u64,
    arguments_ptr: u64,
    amount_ptr: u64,
    gas: u64
)
[src]

pub unsafe fn promise_batch_action_transfer(
    &self,
    promise_index: u64,
    amount_ptr: u64
)
[src]

pub unsafe fn promise_batch_action_stake(
    &self,
    promise_index: u64,
    amount_ptr: u64,
    public_key_len: u64,
    public_key_ptr: u64
)
[src]

pub unsafe fn promise_batch_action_add_key_with_full_access(
    &self,
    promise_index: u64,
    public_key_len: u64,
    public_key_ptr: u64,
    nonce: u64
)
[src]

pub unsafe fn promise_batch_action_add_key_with_function_call(
    &self,
    promise_index: u64,
    public_key_len: u64,
    public_key_ptr: u64,
    nonce: u64,
    allowance_ptr: u64,
    receiver_id_len: u64,
    receiver_id_ptr: u64,
    method_names_len: u64,
    method_names_ptr: u64
)
[src]

pub unsafe fn promise_batch_action_delete_key(
    &self,
    promise_index: u64,
    public_key_len: u64,
    public_key_ptr: u64
)
[src]

pub unsafe fn promise_batch_action_delete_account(
    &self,
    promise_index: u64,
    beneficiary_id_len: u64,
    beneficiary_id_ptr: u64
)
[src]

pub unsafe fn promise_results_count(&self) -> u64[src]

pub unsafe fn promise_result(&self, result_idx: u64, register_id: u64) -> u64[src]

pub unsafe fn promise_return(&self, promise_id: u64)[src]

pub unsafe fn storage_write(
    &self,
    key_len: u64,
    key_ptr: u64,
    value_len: u64,
    value_ptr: u64,
    register_id: u64
) -> u64
[src]

pub unsafe fn storage_read(
    &self,
    key_len: u64,
    key_ptr: u64,
    register_id: u64
) -> u64
[src]

pub unsafe fn storage_remove(
    &self,
    key_len: u64,
    key_ptr: u64,
    register_id: u64
) -> u64
[src]

pub unsafe fn storage_has_key(&self, key_len: u64, key_ptr: u64) -> u64[src]

pub unsafe fn validator_stake(
    &self,
    account_id_len: u64,
    account_id_ptr: u64,
    stake_ptr: u64
)
[src]

pub unsafe fn validator_total_stake(&self, stake_ptr: u64)[src]

Loading content...

Provided methods

Loading content...

Implementors

impl BlockchainInterface for MockedBlockchain[src]

Loading content...