pub enum UnifiedMemoryInfoList<'a> {
    Maps(MinidumpLinuxMaps<'a>),
    Info(MinidumpMemoryInfoList<'a>),
}
Expand description

Provides a unified interface for getting metadata about the process’s mapped memory regions at the time of the crash.

Currently this is one of MinidumpMemoryInfoList, available in Windows minidumps, or MinidumpLinuxMaps, available in Linux minidumps.

This allows you to e.g. check whether an address was executable or not without worrying about which platform the crash occured on. If you need to do more specific analysis, you can get the native formats with UnifiedMemoryInfoList::info and UnifiedMemoryInfoList::maps.

Currently an enum because there is no situation where you can have both, but this may change if the format evolves. Prefer using this type’s methods over pattern matching.

Variants

Maps(MinidumpLinuxMaps<'a>)

Info(MinidumpMemoryInfoList<'a>)

Implementations

Take two potential memory info sources and create an interface that unifies them.

Under normal circumstances a minidump should only contain one of these. If both are provided, one will be arbitrarily preferred to attempt to make progress.

Return a MinidumpMemory containing memory at address, if one exists.

Iterate over the memory regions in the order contained in the minidump.

Iterate over the memory regions in order by memory address.

Write a human-readable description of this MinidumpMemoryList to f.

This is very verbose, it is the format used by minidump_dump.

Get the MinidumpLinuxMaps contained inside, if it exists.

Potentially useful for doing a more refined analysis in specific places.

Get the MinidumpMemoryInfoList contained inside, if it exists.

Potentially useful for doing a more refined analysis in specific places.

Trait Implementations

Returns a copy of the value. Read more

Performs copy-assignment from source. Read more

Formats the value using the given formatter. Read more

Returns the “default value” for a type. Read more

Auto Trait Implementations

Blanket Implementations

Gets the TypeId of self. Read more

Immutably borrows from an owned value. Read more

Mutably borrows from an owned value. Read more

Returns the argument unchanged.

Calls U::from(self).

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

The resulting type after obtaining ownership.

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

🔬 This is a nightly-only experimental API. (toowned_clone_into)

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

The type returned in the event of a conversion error.

Performs the conversion.

The type returned in the event of a conversion error.

Performs the conversion.