pub async fn process_minidump<'a, T, P>(
    dump: &Minidump<'a, T>,
    symbol_provider: &P
) -> Result<ProcessState, ProcessError>
where T: Deref<Target = [u8]> + 'a, P: SymbolProvider + Sync,
Expand description

Unwind all threads in dump and return a report as a ProcessState.

This is equivalent to process_minidump_with_options with ProcessorOptions::stable_basic.

§Examples

use minidump::Minidump;
use std::path::PathBuf;
use breakpad_symbols::{Symbolizer, SimpleSymbolSupplier};
use minidump_processor::ProcessError;

#[tokio::main]
async fn main() -> Result<(), ProcessError> {
    let mut dump = Minidump::read_path("../testdata/test.dmp")?;
    let supplier = SimpleSymbolSupplier::new(vec!(PathBuf::from("../testdata/symbols")));
    let symbolizer = Symbolizer::new(supplier);
    let state = minidump_processor::process_minidump(&mut dump, &symbolizer).await?;
    assert_eq!(state.threads.len(), 2);
    println!("Processed {} threads", state.threads.len());
    Ok(())
}