Struct solana_sdk::process_instruction::MockInvokeContext [−][src]
pub struct MockInvokeContext { pub key: Pubkey, pub logger: MockLogger, pub bpf_compute_budget: BpfComputeBudget, pub compute_meter: MockComputeMeter, pub programs: Vec<(Pubkey, ProcessInstructionWithContext)>, pub accounts: Vec<(Pubkey, Rc<RefCell<AccountSharedData>>)>, pub invoke_depth: usize, pub sysvars: Vec<(Pubkey, Option<Rc<Vec<u8>>>)>, }
Fields
key: Pubkey
logger: MockLogger
bpf_compute_budget: BpfComputeBudget
compute_meter: MockComputeMeter
programs: Vec<(Pubkey, ProcessInstructionWithContext)>
accounts: Vec<(Pubkey, Rc<RefCell<AccountSharedData>>)>
invoke_depth: usize
sysvars: Vec<(Pubkey, Option<Rc<Vec<u8>>>)>
Trait Implementations
impl Default for MockInvokeContext
[src]
impl Default for MockInvokeContext
[src]impl InvokeContext for MockInvokeContext
[src]
impl InvokeContext for MockInvokeContext
[src]fn push(&mut self, _key: &Pubkey) -> Result<(), InstructionError>
[src]
fn push(&mut self, _key: &Pubkey) -> Result<(), InstructionError>
[src]Push a program ID on to the invocation stack
fn invoke_depth(&self) -> usize
[src]
fn invoke_depth(&self) -> usize
[src]Current depth of the invocation stake
fn verify_and_update(
&mut self,
_message: &Message,
_instruction: &CompiledInstruction,
_accounts: &[Rc<RefCell<AccountSharedData>>],
_caller_pivileges: Option<&[bool]>
) -> Result<(), InstructionError>
[src]
fn verify_and_update(
&mut self,
_message: &Message,
_instruction: &CompiledInstruction,
_accounts: &[Rc<RefCell<AccountSharedData>>],
_caller_pivileges: Option<&[bool]>
) -> Result<(), InstructionError>
[src]Verify and update PreAccount state based on program execution
fn get_caller(&self) -> Result<&Pubkey, InstructionError>
[src]
fn get_caller(&self) -> Result<&Pubkey, InstructionError>
[src]Get the program ID of the currently executing program
fn get_programs(&self) -> &[(Pubkey, ProcessInstructionWithContext)]ⓘ
[src]
fn get_programs(&self) -> &[(Pubkey, ProcessInstructionWithContext)]ⓘ
[src]Get a list of built-in programs
fn get_logger(&self) -> Rc<RefCell<dyn Logger>>
[src]
fn get_logger(&self) -> Rc<RefCell<dyn Logger>>
[src]Get this invocation’s logger
fn get_bpf_compute_budget(&self) -> &BpfComputeBudget
[src]
fn get_bpf_compute_budget(&self) -> &BpfComputeBudget
[src]Get this invocation’s compute budget
fn get_compute_meter(&self) -> Rc<RefCell<dyn ComputeMeter>>
[src]
fn get_compute_meter(&self) -> Rc<RefCell<dyn ComputeMeter>>
[src]Get this invocation’s compute meter
fn add_executor(&self, _pubkey: &Pubkey, _executor: Arc<dyn Executor>)
[src]
fn add_executor(&self, _pubkey: &Pubkey, _executor: Arc<dyn Executor>)
[src]Loaders may need to do work in order to execute a program. Cache the work that can be re-used across executions Read more
fn get_executor(&self, _pubkey: &Pubkey) -> Option<Arc<dyn Executor>>
[src]
fn get_executor(&self, _pubkey: &Pubkey) -> Option<Arc<dyn Executor>>
[src]Get the completed loader work that can be re-used across executions
fn record_instruction(&self, _instruction: &Instruction)
[src]
fn record_instruction(&self, _instruction: &Instruction)
[src]Record invoked instruction
fn is_feature_active(&self, _feature_id: &Pubkey) -> bool
[src]
fn is_feature_active(&self, _feature_id: &Pubkey) -> bool
[src]Get the bank’s active feature set
fn get_account(&self, pubkey: &Pubkey) -> Option<Rc<RefCell<AccountSharedData>>>
[src]
fn get_account(&self, pubkey: &Pubkey) -> Option<Rc<RefCell<AccountSharedData>>>
[src]Get an account from a pre-account
Auto Trait Implementations
impl !RefUnwindSafe for MockInvokeContext
impl !Send for MockInvokeContext
impl !Sync for MockInvokeContext
impl Unpin for MockInvokeContext
impl !UnwindSafe for MockInvokeContext
Blanket Implementations
impl<T> AbiExample for T
[src]
impl<T> AbiExample for T
[src]impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]pub fn borrow_mut(&mut self) -> &mut T
[src]
pub fn borrow_mut(&mut self) -> &mut T
[src]Mutably borrows from an owned value. Read more
impl<T> Same<T> for T
impl<T> Same<T> for T
type Output = T
type Output = T
Should always be Self
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
impl<V, T> VZip<V> for T where
V: MultiLane<T>,