Trait PrecompileSet

Source
pub trait PrecompileSet<S, H> {
    // Required method
    fn execute(
        &self,
        code_address: H160,
        input: &[u8],
        state: &mut S,
        handler: &mut H,
    ) -> Option<(ExitResult, Vec<u8>)>;

    // Provided method
    fn on_transaction(&self, _state: &mut S, _handler: &mut H) { ... }
}
Expand description

A set of precompiles.

Required Methods§

Source

fn execute( &self, code_address: H160, input: &[u8], state: &mut S, handler: &mut H, ) -> Option<(ExitResult, Vec<u8>)>

Attempt to execute the precompile at the given code_address. Returns None if it’s not a precompile.

Provided Methods§

Source

fn on_transaction(&self, _state: &mut S, _handler: &mut H)

Initialize before a transaction. Used to warm precompile addresses.

Implementations on Foreign Types§

Source§

impl<S, H> PrecompileSet<S, H> for ()

Source§

fn execute( &self, _code_address: H160, _input: &[u8], _state: &mut S, _handler: &mut H, ) -> Option<(ExitResult, Vec<u8>)>

Implementors§