Struct pdb::Symbol[][src]

pub struct Symbol<'t> { /* fields omitted */ }

Represents a symbol from the symbol table.

A Symbol is represented internally as a &[u8], and in general the bytes inside are not inspected in any way before calling any of the accessor methods.

To avoid copying, Symbols exist as references to data owned by the parent SymbolTable. Therefore, a Symbol may not outlive its parent SymbolTable.

Implementations

impl<'t> Symbol<'t>[src]

pub fn index(&self) -> SymbolIndex[src]

The index of this symbol in the containing symbol stream.

pub fn raw_kind(&self) -> SymbolKind[src]

Returns the kind of symbol identified by this Symbol.

pub fn raw_bytes(&self) -> &'t [u8]

Notable traits for &'_ [u8]

impl<'_> Read for &'_ [u8]impl<'_> Write for &'_ mut [u8]
[src]

Returns the raw bytes of this symbol record, including the symbol type and extra data, but not including the preceding symbol length indicator.

pub fn parse(&self) -> Result<SymbolData<'t>>[src]

Parse the symbol into the SymbolData it contains.

pub fn starts_scope(&self) -> bool[src]

Returns whether this symbol starts a scope.

If true, this symbol has a parent and an end field, which contains the offset of the corrsponding end symbol.

pub fn ends_scope(&self) -> bool[src]

Returns whether this symbol declares the end of a scope.

Trait Implementations

impl<'t> Clone for Symbol<'t>[src]

impl<'t> Copy for Symbol<'t>[src]

impl<'t> Debug for Symbol<'t>[src]

impl<'t> PartialEq<Symbol<'t>> for Symbol<'t>[src]

impl<'t> StructuralPartialEq for Symbol<'t>[src]

Auto Trait Implementations

impl<'t> RefUnwindSafe for Symbol<'t>

impl<'t> Send for Symbol<'t>

impl<'t> Sync for Symbol<'t>

impl<'t> Unpin for Symbol<'t>

impl<'t> UnwindSafe for Symbol<'t>

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> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

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.