pub enum ObjectDebugSession<'d> {
    Breakpad(BreakpadDebugSession<'d>),
    Dwarf(DwarfDebugSession<'d>),
    Pdb(PdbDebugSession<'d>),
    SourceBundle(SourceBundleDebugSession<'d>),
    PortablePdb(PortablePdbDebugSession<'d>),
}
Expand description

A generic debugging session.

Variants§

Implementations§

source§

impl<'d> ObjectDebugSession<'d>

source

pub fn functions(&self) -> ObjectFunctionIterator<'_>

Returns an iterator over all functions in this debug file.

Functions are iterated in the order they are declared in their compilation units. The functions yielded by this iterator include all inlinees and line records resolved.

Note that the iterator holds a mutable borrow on the debug session, which allows it to use caches and optimize resources while resolving function and line information.

source

pub fn files(&self) -> ObjectFileIterator<'_>

Returns an iterator over all source files referenced by this debug file.

source

pub fn source_by_path( &self, path: &str ) -> Result<Option<SourceFileDescriptor<'_>>, ObjectError>

Looks up a file’s source by its full canonicalized path. Returns either source contents, if it was embedded, or a source link.

Trait Implementations§

source§

impl<'session> DebugSession<'session> for ObjectDebugSession<'_>

§

type Error = ObjectError

The error returned when reading debug information fails.
§

type FunctionIterator = ObjectFunctionIterator<'session>

An iterator over all functions in this debug file.
§

type FileIterator = ObjectFileIterator<'session>

An iterator over all source files referenced by this debug file.
source§

fn functions(&'session self) -> Self::FunctionIterator

Returns an iterator over all functions in this debug file. Read more
source§

fn files(&'session self) -> Self::FileIterator

Returns an iterator over all source files referenced by this debug file.
source§

fn source_by_path( &self, path: &str ) -> Result<Option<SourceFileDescriptor<'_>>, Self::Error>

Looks up a file’s source by its full canonicalized path. Read more

Auto Trait Implementations§

§

impl<'d> !RefUnwindSafe for ObjectDebugSession<'d>

§

impl<'d> !Send for ObjectDebugSession<'d>

§

impl<'d> !Sync for ObjectDebugSession<'d>

§

impl<'d> Unpin for ObjectDebugSession<'d>

§

impl<'d> !UnwindSafe for ObjectDebugSession<'d>

Blanket Implementations§

source§

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

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for Twhere T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for Twhere T: ?Sized,

source§

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

Mutably borrows from an owned value. Read more
source§

impl<I, T> ExtractContext<I, ()> for T

source§

fn extract_context(self, _original_input: I)

Given the context attached to a nom error, and given the original input to the nom parser, extract more the useful context information. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for Twhere U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

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

source§

impl<I> RecreateContext<I> for I

source§

fn recreate_context(_original_input: I, tail: I) -> I

Given the original input, as well as the context reported by nom, recreate a context in the original string where the error occurred. Read more
source§

impl<T, U> TryFrom<U> for Twhere U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

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

Performs the conversion.
source§

impl<T, U> TryInto<U> for Twhere U: TryFrom<T>,

§

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

The type returned in the event of a conversion error.
source§

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

Performs the conversion.