[]Struct symbolic::debuginfo::pdb::pdb::PdbInternalRva

pub struct PdbInternalRva(pub u32);

A Relative Virtual Address in an unoptimized PE file.

An internal RVA points into the PDB internal address space and may not correspond to RVAs of the executable. It can be converted into an actual Rva suitable for debugging purposes using rva.

Implementations

impl PdbInternalRva

pub fn to_rva(self, translator: &AddressMap<'_>) -> Option<Rva>

Resolves an actual Relative Virtual Address in the executable's address space.

pub fn to_section_offset(
    self,
    translator: &AddressMap<'_>
) -> Option<SectionOffset>

Resolves the section offset in the PE headers.

This is an offset into PE section headers of the executable. To retrieve section offsets used in the PDB, use to_internal_offset instead.

pub fn to_internal_offset(
    self,
    translator: &AddressMap<'_>
) -> Option<PdbInternalSectionOffset>

Resolves the PDB internal section offset.

This is the offset value used in the PDB file. To index into the actual PE section headers, use to_section_offset instead.

impl PdbInternalRva

pub fn checked_add(self, offset: u32) -> Option<PdbInternalRva>

Checked addition of an offset. Returns None if overflow occurred.

pub fn checked_sub(self, other: PdbInternalRva) -> Option<u32>

Checked computation of an offset between two addresses. Returns None if other is larger.

pub fn saturating_add(self, offset: u32) -> PdbInternalRva

Saturating addition of an offset, clipped at the numeric bounds.

pub fn saturating_sub(self, other: PdbInternalRva) -> u32

Saturating computation of an offset between two addresses, clipped at zero.

pub fn wrapping_add(self, offset: u32) -> PdbInternalRva

Wrapping (modular) addition of an offset.

pub fn wrapping_sub(self, other: PdbInternalRva) -> u32

Wrapping (modular) computation of an offset between two addresses.

Trait Implementations

impl Add<u32> for PdbInternalRva

type Output = PdbInternalRva

The resulting type after applying the + operator.

pub fn add(self, offset: u32) -> PdbInternalRva

Adds the given offset to this address.

impl AddAssign<u32> for PdbInternalRva

pub fn add_assign(&mut self, offset: u32)

Adds the given offset to this address.

impl Clone for PdbInternalRva

impl Copy for PdbInternalRva

impl Debug for PdbInternalRva

impl Default for PdbInternalRva

impl Display for PdbInternalRva

impl Eq for PdbInternalRva

impl From<u32> for PdbInternalRva

impl Hash for PdbInternalRva

impl Ord for PdbInternalRva

impl PartialEq<PdbInternalRva> for PdbInternalRva

impl PartialOrd<PdbInternalRva> for PdbInternalRva

impl StructuralEq for PdbInternalRva

impl StructuralPartialEq for PdbInternalRva

impl Sub<PdbInternalRva> for PdbInternalRva

type Output = u32

The resulting type after applying the - operator.

impl<'a> TryFromCtx<'a, Endian, [u8]> for PdbInternalRva

type Error = Error

Auto Trait Implementations

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> RuleType for T where
    T: Eq + Ord + Copy + Debug + Hash
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T> ToString for T where
    T: Display + ?Sized
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.