[−]Struct symbolic::debuginfo::pdb::pdb::PdbInternalRva
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>
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>
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
pub fn clone(&self) -> PdbInternalRva
pub fn clone_from(&mut self, source: &Self)
1.0.0[src]
impl Copy for PdbInternalRva
impl Debug for PdbInternalRva
impl Default for PdbInternalRva
pub fn default() -> PdbInternalRva
impl Display for PdbInternalRva
impl Eq for PdbInternalRva
impl From<u32> for PdbInternalRva
pub fn from(offset: u32) -> PdbInternalRva
impl Hash for PdbInternalRva
pub fn hash<__H>(&self, state: &mut __H) where
__H: Hasher,
__H: Hasher,
pub fn hash_slice<H>(data: &[Self], state: &mut H) where
H: Hasher,
1.3.0[src]
H: Hasher,
impl Ord for PdbInternalRva
pub fn cmp(&self, other: &PdbInternalRva) -> Ordering
#[must_use]pub fn max(self, other: Self) -> Self
1.21.0[src]
#[must_use]pub fn min(self, other: Self) -> Self
1.21.0[src]
#[must_use]pub fn clamp(self, min: Self, max: Self) -> Self
1.50.0[src]
impl PartialEq<PdbInternalRva> for PdbInternalRva
pub fn eq(&self, other: &PdbInternalRva) -> bool
pub fn ne(&self, other: &PdbInternalRva) -> bool
impl PartialOrd<PdbInternalRva> for PdbInternalRva
pub fn partial_cmp(&self, other: &PdbInternalRva) -> Option<Ordering>
pub fn lt(&self, other: &PdbInternalRva) -> bool
pub fn le(&self, other: &PdbInternalRva) -> bool
pub fn gt(&self, other: &PdbInternalRva) -> bool
pub fn ge(&self, other: &PdbInternalRva) -> bool
impl StructuralEq for PdbInternalRva
impl StructuralPartialEq for PdbInternalRva
impl Sub<PdbInternalRva> for PdbInternalRva
type Output = u32
The resulting type after applying the -
operator.
pub fn sub(
self,
other: PdbInternalRva
) -> <PdbInternalRva as Sub<PdbInternalRva>>::Output
self,
other: PdbInternalRva
) -> <PdbInternalRva as Sub<PdbInternalRva>>::Output
impl<'a> TryFromCtx<'a, Endian, [u8]> for PdbInternalRva
type Error = Error
pub fn try_from_ctx(
this: &'a [u8],
le: Endian
) -> Result<(PdbInternalRva, usize), Error>
this: &'a [u8],
le: Endian
) -> Result<(PdbInternalRva, usize), Error>
Auto Trait Implementations
impl RefUnwindSafe for PdbInternalRva
[src]
impl Send for PdbInternalRva
[src]
impl Sync for PdbInternalRva
[src]
impl Unpin for PdbInternalRva
[src]
impl UnwindSafe for PdbInternalRva
[src]
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
pub fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T> RuleType for T where
T: Eq + Ord + Copy + Debug + Hash,
[src]
T: Eq + Ord + Copy + Debug + Hash,
impl<T> ToOwned for T where
T: Clone,
[src]
T: Clone,
type Owned = T
The resulting type after obtaining ownership.
pub fn to_owned(&self) -> T
[src]
pub fn clone_into(&self, target: &mut T)
[src]
impl<T> ToString for T where
T: Display + ?Sized,
[src]
T: Display + ?Sized,
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
pub fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,