Struct pdb::ProcedureSymbol[][src]

pub struct ProcedureSymbol<'t> {
    pub global: bool,
    pub dpc: bool,
    pub parent: Option<SymbolIndex>,
    pub end: SymbolIndex,
    pub next: Option<SymbolIndex>,
    pub len: u32,
    pub dbg_start_offset: u32,
    pub dbg_end_offset: u32,
    pub type_index: TypeIndex,
    pub offset: PdbInternalSectionOffset,
    pub flags: ProcedureFlags,
    pub name: RawString<'t>,
}

A procedure, such as a function or method.

Symbol kinds:

  • S_GPROC32, S_GPROC32_ST for global procedures
  • S_LPROC32, S_LPROC32_ST for local procedures
  • S_LPROC32_DPC for DPC procedures
  • S_GPROC32_ID, S_LPROC32_ID, S_LPROC32_DPC_ID for procedures referencing types from the ID stream rather than the Type stream.

Fields

global: bool

Whether this is a global or local procedure.

dpc: bool

Indicates Deferred Procedure Calls (DPC).

parent: Option<SymbolIndex>

The parent scope that this procedure is nested in.

end: SymbolIndex

The end symbol of this procedure.

next: Option<SymbolIndex>

The next procedure symbol.

len: u32

The length of the code block covered by this procedure.

dbg_start_offset: u32

Start offset of the procedure’s body code, which marks the end of the prologue.

dbg_end_offset: u32

End offset of the procedure’s body code, which marks the start of the epilogue.

type_index: TypeIndex

Identifier of the procedure type.

The type contains the complete signature, including parameters, modifiers and the return type.

offset: PdbInternalSectionOffset

Code offset of the start of this procedure.

flags: ProcedureFlags

Detailed flags of this procedure.

name: RawString<'t>

The full, demangled name of the procedure.

Trait Implementations

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

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

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

impl<'t> Eq for ProcedureSymbol<'t>[src]

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

impl<'t> StructuralEq for ProcedureSymbol<'t>[src]

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

impl<'t> TryFromCtx<'t, u16, [u8]> for ProcedureSymbol<'t>[src]

type Error = Error

Auto Trait Implementations

impl<'t> RefUnwindSafe for ProcedureSymbol<'t>

impl<'t> Send for ProcedureSymbol<'t>

impl<'t> Sync for ProcedureSymbol<'t>

impl<'t> Unpin for ProcedureSymbol<'t>

impl<'t> UnwindSafe for ProcedureSymbol<'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.