[−][src]Struct symbolic_debuginfo::sourcebundle::SourceBundle
A bundle of source code files.
To create a source bundle, see SourceBundleWriter
. For more information, see the module
level documentation.
Implementations
impl<'d> SourceBundle<'d>
[src]
pub fn test(bytes: &[u8]) -> bool
[src]
Tests whether the buffer could contain a SourceBundle
.
pub fn parse(data: &'d [u8]) -> Result<SourceBundle<'d>, SourceBundleError>
[src]
Tries to parse a SourceBundle
from the given slice.
pub fn version(&self) -> SourceBundleVersion
[src]
Returns the version of this source bundle format.
pub fn file_format(&self) -> FileFormat
[src]
The container file format, which is always FileFormat::SourceBundle
.
pub fn code_id(&self) -> Option<CodeId>
[src]
The code identifier of this object.
This is only set if the source bundle was created from an ObjectLike
. It can also be set
in the SourceBundleWriter
by setting the "code_id"
attribute.
pub fn debug_id(&self) -> DebugId
[src]
The code identifier of this object.
This is only set if the source bundle was created from an ObjectLike
. It can also be set
in the SourceBundleWriter
by setting the "debug_id"
attribute.
pub fn name(&self) -> Option<&str>
[src]
The debug file name of this object.
This is only set if the source bundle was created from an ObjectLike
. It can also be set
in the SourceBundleWriter
by setting the "object_name"
attribute.
pub fn arch(&self) -> Arch
[src]
The CPU architecture of this object.
This is only set if the source bundle was created from an ObjectLike
. It can also be set
in the SourceBundleWriter
by setting the "arch"
attribute.
pub fn load_address(&self) -> u64
[src]
The address at which the image prefers to be loaded into memory.
Because source bundles do not contain this information is always 0
.
pub fn has_symbols(&self) -> bool
[src]
Determines whether this object exposes a public symbol table.
Source bundles never have symbols.
pub fn symbols(&self) -> SourceBundleSymbolIterator<'d>
[src]
Returns an iterator over symbols in the public symbol table.
pub fn symbol_map(&self) -> SymbolMap<'d>
[src]
Returns an ordered map of symbols in the symbol table.
pub fn has_debug_info(&self) -> bool
[src]
Determines whether this object contains debug information.
Source bundles never have debug info.
pub fn debug_session(
&self
) -> Result<SourceBundleDebugSession<'d>, SourceBundleError>
[src]
&self
) -> Result<SourceBundleDebugSession<'d>, SourceBundleError>
Constructs a debugging session.
A debugging session loads certain information from the object file and creates caches for efficient access to various records in the debug information. Since this can be quite a costly process, try to reuse the debugging session as long as possible.
pub fn has_unwind_info(&self) -> bool
[src]
Determines whether this object contains stack unwinding information.
pub fn has_sources(&self) -> bool
[src]
Determines whether this object contains embedded source.
pub fn data(&self) -> &'d [u8]
[src]
Returns the raw data of the source bundle.
pub fn is_empty(&self) -> bool
[src]
Returns true if this source bundle contains no source code.
Trait Implementations
impl<'slf, 'd: 'slf> AsSelf<'slf> for SourceBundle<'d>
[src]
type Ref = SourceBundle<'slf>
The Self
type with 'slf
lifetimes, returned by as_self
.
fn as_self(&'slf self) -> &Self::Ref
[src]
impl<'_> Debug for SourceBundle<'_>
[src]
impl<'d> ObjectLike for SourceBundle<'d>
[src]
type Error = SourceBundleError
Errors thrown when reading information from this object.
type Session = SourceBundleDebugSession<'d>
A session that allows optimized access to debugging information.
fn file_format(&self) -> FileFormat
[src]
fn code_id(&self) -> Option<CodeId>
[src]
fn debug_id(&self) -> DebugId
[src]
fn arch(&self) -> Arch
[src]
fn kind(&self) -> ObjectKind
[src]
fn load_address(&self) -> u64
[src]
fn has_symbols(&self) -> bool
[src]
fn symbol_map(&self) -> SymbolMap
[src]
fn symbols(&self) -> DynIterator<Symbol>
[src]
fn has_debug_info(&self) -> bool
[src]
fn debug_session(&self) -> Result<Self::Session, Self::Error>
[src]
fn has_unwind_info(&self) -> bool
[src]
fn has_sources(&self) -> bool
[src]
Auto Trait Implementations
impl<'d> !RefUnwindSafe for SourceBundle<'d>
impl<'d> Send for SourceBundle<'d>
impl<'d> Sync for SourceBundle<'d>
impl<'d> Unpin for SourceBundle<'d>
impl<'d> !UnwindSafe for SourceBundle<'d>
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,
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, 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.
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>,