Struct DwarfReader

pub struct DwarfReader { pub ptr: *const u8 }

Fields

ptr: *const u8

Implementations

impl DwarfReader

fn new(ptr: *const u8) -> DwarfReader
unsafe fn read<T: Copy>(&mut self) -> T

Read a type T and then bump the pointer by that amount.

DWARF streams are "packed", so all types must be read at align 1.

unsafe fn read_uleb128(&mut self) -> u64

ULEB128 and SLEB128 encodings are defined in Section 7.6 - "Variable Length Data".

unsafe fn read_sleb128(&mut self) -> i64

Auto Trait Implementations

impl !Send for DwarfReader

impl !Sync for DwarfReader

impl Freeze for DwarfReader

impl RefUnwindSafe for DwarfReader

impl Unpin for DwarfReader

impl UnsafeUnpin for DwarfReader

impl UnwindSafe for DwarfReader

Blanket Implementations

impl<T> Any for DwarfReader where T: 'static + ?Sized,

fn type_id(&self) -> TypeId

impl<T> Borrow<T> for DwarfReader where T: ?Sized,

fn borrow(&self) -> &T

impl<T> BorrowMut<T> for DwarfReader where T: ?Sized,

fn borrow_mut(&mut self) -> &mut T

impl<T> From<T> for DwarfReader

fn from(t: T) -> T

Returns the argument unchanged.

impl<T> SizeHint for DwarfReader where T: ?Sized,

fn lower_bound(&self) -> usize
fn upper_bound(&self) -> Option<usize>

impl<T> SizedTypeProperties for DwarfReader

impl<T, U> Into<U> for DwarfReader where U: From<T>,

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of [From]<T> for U chooses to do.

impl<T, U> TryFrom<U> for DwarfReader where U: Into<T>,

type Error = Infallible;
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

impl<T, U> TryInto<U> for DwarfReader where U: TryFrom<T>,

type Error = <U as TryFrom<T>>::Error;
fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>