Trait yaxpeax_arch::AddressBase[][src]

pub trait AddressBase where
    Self: AddressDisplay + Copy + Clone + Sized + Hash + Ord + Eq + PartialEq + Bounded + Add<AddressDiff<Self>, Output = Self> + Sub<AddressDiff<Self>, Output = Self> + AddAssign<AddressDiff<Self>> + SubAssign<AddressDiff<Self>> + WrappingAdd + WrappingSub + CheckedAdd + CheckedSub + Zero + AddressDiffAmount
{ fn to_linear(&self) -> usize; fn diff(&self, other: &Self) -> Option<AddressDiff<Self>> { ... }
fn wrapping_offset(&self, other: AddressDiff<Self>) -> Self { ... }
fn checked_offset(&self, other: AddressDiff<Self>) -> Option<Self> { ... } }

Required methods

fn to_linear(&self) -> usize[src]

Loading content...

Provided methods

fn diff(&self, other: &Self) -> Option<AddressDiff<Self>>[src]

compute the AddressDiff beetween self and other.

may return None if the two addresses aren’t comparable. for example, if a pair of addresses are a data-space address and code-space address, there may be no scalar that can describe the difference between them.

fn wrapping_offset(&self, other: AddressDiff<Self>) -> Self[src]

fn checked_offset(&self, other: AddressDiff<Self>) -> Option<Self>[src]

Loading content...

Implementations on Foreign Types

impl AddressBase for u16[src]

fn to_linear(&self) -> usize[src]

impl AddressBase for u32[src]

fn to_linear(&self) -> usize[src]

impl AddressBase for u64[src]

fn to_linear(&self) -> usize[src]

impl AddressBase for usize[src]

fn to_linear(&self) -> usize[src]

Loading content...

Implementors

Loading content...