pub trait RelocationHandler: 'static + Sized + AsRef<CoreRelocationHandler> {
    type Handle: Borrow<Self>;

    // Required method
    fn handle(&self) -> Self::Handle;

    // Provided methods
    fn get_relocation_info(
        &self,
        _bv: &BinaryView,
        _arch: &CoreArchitecture,
        _info: &mut [RelocationInfo]
    ) -> bool { ... }
    fn apply_relocation(
        &self,
        bv: &BinaryView,
        arch: &CoreArchitecture,
        reloc: &Relocation,
        dest: &mut [u8]
    ) -> bool { ... }
    fn get_operand_for_external_relocation(
        &self,
        _data: &[u8],
        _addr: u64,
        _il: &RegularFunction<CoreArchitecture>,
        _reloc: &Relocation
    ) -> RelocationOperand { ... }
}

Required Associated Types§

source

type Handle: Borrow<Self>

Required Methods§

source

fn handle(&self) -> Self::Handle

Provided Methods§

source

fn get_relocation_info( &self, _bv: &BinaryView, _arch: &CoreArchitecture, _info: &mut [RelocationInfo] ) -> bool

source

fn apply_relocation( &self, bv: &BinaryView, arch: &CoreArchitecture, reloc: &Relocation, dest: &mut [u8] ) -> bool

source

fn get_operand_for_external_relocation( &self, _data: &[u8], _addr: u64, _il: &RegularFunction<CoreArchitecture>, _reloc: &Relocation ) -> RelocationOperand

Object Safety§

This trait is not object safe.

Implementors§