pub trait BackendExternalities: Externalities + CountersOwner {
// Required methods
fn into_ext_info(self, memory: &impl Memory) -> Result<ExtInfo, MemoryError>;
fn gas_amount(&self) -> GasAmount;
fn pre_process_memory_accesses(
reads: &[MemoryInterval],
writes: &[MemoryInterval],
gas_left: &mut GasLeft
) -> Result<(), ProcessAccessError>;
}
Expand description
Extended externalities that can manage gas counters.
Required Methods§
fn into_ext_info(self, memory: &impl Memory) -> Result<ExtInfo, MemoryError>
fn gas_amount(&self) -> GasAmount
sourcefn pre_process_memory_accesses(
reads: &[MemoryInterval],
writes: &[MemoryInterval],
gas_left: &mut GasLeft
) -> Result<(), ProcessAccessError>
fn pre_process_memory_accesses( reads: &[MemoryInterval], writes: &[MemoryInterval], gas_left: &mut GasLeft ) -> Result<(), ProcessAccessError>
Pre-process memory access if need.