pub trait SyscallInvokeSigned {
// Required methods
fn translate_instruction(
addr: u64,
memory_mapping: &MemoryMapping<'_>,
invoke_context: &mut InvokeContext<'_, '_>,
check_aligned: bool,
) -> Result<Instruction, Box<dyn Error>>;
fn translate_accounts<'a>(
account_infos_addr: u64,
account_infos_len: u64,
memory_mapping: &MemoryMapping<'_>,
invoke_context: &mut InvokeContext<'_, '_>,
check_aligned: bool,
) -> Result<Vec<TranslatedAccount<'a>>, Box<dyn Error>>;
fn translate_signers(
program_id: &Pubkey,
signers_seeds_addr: u64,
signers_seeds_len: u64,
memory_mapping: &MemoryMapping<'_>,
check_aligned: bool,
) -> Result<Vec<Pubkey>, Box<dyn Error>>;
}๐Deprecated since 3.1.0: This crate has been marked for formal inclusion in the Agave Unstable API. From v4.0.0 onward, the
agave-unstable-api crate feature must be specified to acknowledge use of an interface that may break without warning.Expand description
Implemented by language specific data structure translators
Required Methodsยง
fn translate_instruction( addr: u64, memory_mapping: &MemoryMapping<'_>, invoke_context: &mut InvokeContext<'_, '_>, check_aligned: bool, ) -> Result<Instruction, Box<dyn Error>>
๐Deprecated since 3.1.0: This crate has been marked for formal inclusion in the Agave Unstable API. From v4.0.0 onward, the
agave-unstable-api crate feature must be specified to acknowledge use of an interface that may break without warning.fn translate_accounts<'a>( account_infos_addr: u64, account_infos_len: u64, memory_mapping: &MemoryMapping<'_>, invoke_context: &mut InvokeContext<'_, '_>, check_aligned: bool, ) -> Result<Vec<TranslatedAccount<'a>>, Box<dyn Error>>
๐Deprecated since 3.1.0: This crate has been marked for formal inclusion in the Agave Unstable API. From v4.0.0 onward, the
agave-unstable-api crate feature must be specified to acknowledge use of an interface that may break without warning.fn translate_signers( program_id: &Pubkey, signers_seeds_addr: u64, signers_seeds_len: u64, memory_mapping: &MemoryMapping<'_>, check_aligned: bool, ) -> Result<Vec<Pubkey>, Box<dyn Error>>
๐Deprecated since 3.1.0: This crate has been marked for formal inclusion in the Agave Unstable API. From v4.0.0 onward, the
agave-unstable-api crate feature must be specified to acknowledge use of an interface that may break without warning.Dyn Compatibilityยง
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.