pub trait EcalHandler: Clonewhere
Self: Sized,{
const INC_PC: bool = true;
// Required method
fn ecal<M, S, Tx, V>(
vm: &mut Interpreter<M, S, Tx, Self, V>,
a: RegId,
b: RegId,
c: RegId,
d: RegId,
) -> SimpleResult<()>
where M: Memory;
}
Expand description
ECAL opcode handler.
This can be cloned…
- when the whole VM instance is cloned, for any reason
- for each predicate when running predicates for a tx
Provided Associated Constants§
Required Methods§
Sourcefn ecal<M, S, Tx, V>(
vm: &mut Interpreter<M, S, Tx, Self, V>,
a: RegId,
b: RegId,
c: RegId,
d: RegId,
) -> SimpleResult<()>where
M: Memory,
fn ecal<M, S, Tx, V>(
vm: &mut Interpreter<M, S, Tx, Self, V>,
a: RegId,
b: RegId,
c: RegId,
d: RegId,
) -> SimpleResult<()>where
M: Memory,
ECAL opcode handler
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.
Implementors§
impl EcalHandler for NotSupportedEcal
Default ECAL opcode handler function, which just errors immediately.