pub struct MINIDUMP_MODULE_CRASHPAD_INFO {
    pub version: u32,
    pub list_annotations: MINIDUMP_LOCATION_DESCRIPTOR,
    pub simple_annotations: MINIDUMP_LOCATION_DESCRIPTOR,
    pub annotation_objects: MINIDUMP_LOCATION_DESCRIPTOR,
}
Expand description

Additional Crashpad-specific information about a module carried within a minidump file.

This structure augments the information provided by MINIDUMP_MODULE. The minidump file must contain a module list stream (::kMinidumpStreamTypeModuleList) in order for this structure to appear.

This structure is versioned. When changing this structure, leave the existing structure intact so that earlier parsers will be able to understand the fields they are aware of, and make additions at the end of the structure. Revise #kVersion and document each field’s validity based on #version, so that newer parsers will be able to determine whether the added fields are valid or not.

See https://crashpad.chromium.org/doxygen/structcrashpad_1_1MinidumpModuleCrashpadInfo.html

Fields§

§version: u32

The structure’s version number.

Readers can use this field to determine which other fields in the structure are valid. Upon encountering a value greater than VERSION, a reader should assume that the structure’s layout is compatible with the structure defined as having value #kVersion.

Writers may produce values less than VERSION in this field if there is no need for any fields present in later versions.

§list_annotations: MINIDUMP_LOCATION_DESCRIPTOR

A MinidumpRVAList pointing to MinidumpUTF8String objects. The module controls the data that appears here.

These strings correspond to ModuleSnapshot::AnnotationsVector() and do not duplicate anything in simple_annotations or annotation_objects.

§simple_annotations: MINIDUMP_LOCATION_DESCRIPTOR

A MinidumpSimpleStringDictionary pointing to strings interpreted as key-value pairs. The module controls the data that appears here.

These key-value pairs correspond to ModuleSnapshot::AnnotationsSimpleMap() and do not duplicate anything in list_annotations or annotation_objects.

§annotation_objects: MINIDUMP_LOCATION_DESCRIPTOR

A MinidumpAnnotationList object containing the annotation objects stored within the module. The module controls the data that appears here.

These key-value pairs correspond to ModuleSnapshot::AnnotationObjects() and do not duplicate anything in list_annotations or simple_annotations.

Implementations§

source§

impl MINIDUMP_MODULE_CRASHPAD_INFO

source

pub const VERSION: u32 = 1u32

The structure’s version number.

Readers can use this field to determine which other fields in the structure are valid. Upon encountering a value greater than VERSION, a reader should assume that the structure’s layout is compatible with the structure defined as having value #kVersion.

Writers may produce values less than VERSION in this field if there is no need for any fields present in later versions.

Trait Implementations§

source§

impl Clone for MINIDUMP_MODULE_CRASHPAD_INFO

source§

fn clone(&self) -> MINIDUMP_MODULE_CRASHPAD_INFO

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for MINIDUMP_MODULE_CRASHPAD_INFO

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl SizeWith<Endian> for MINIDUMP_MODULE_CRASHPAD_INFO

source§

impl<'a> TryFromCtx<'a, Endian> for MINIDUMP_MODULE_CRASHPAD_INFO

§

type Error = Error

source§

fn try_from_ctx( src: &'a [u8], ctx: Endian ) -> Result<(Self, usize), Self::Error>

source§

impl<'a> TryIntoCtx<Endian> for &'a MINIDUMP_MODULE_CRASHPAD_INFO

§

type Error = Error

source§

fn try_into_ctx(self, dst: &mut [u8], ctx: Endian) -> Result<usize, Self::Error>

source§

impl TryIntoCtx<Endian> for MINIDUMP_MODULE_CRASHPAD_INFO

§

type Error = Error

source§

fn try_into_ctx(self, dst: &mut [u8], ctx: Endian) -> Result<usize, Self::Error>

Auto Trait Implementations§

Blanket Implementations§

source§

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

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

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

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

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

source§

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

Mutably borrows from an owned value. 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 T
where 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<T> ToOwned for T
where T: Clone,

§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
source§

impl<T, U> TryFrom<U> for T
where 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 T
where 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.