pub struct PanicInfo<'a> { /* fields omitted */ }
A struct providing information about a panic.
PanicInfo structure is passed to a panic hook set by the set_hook() function.
use std::panic;
panic::set_hook(Box::new(|panic_info| {
println!("panic occured: {:?}", panic_info.payload().downcast_ref::<&str>().unwrap());
}));
panic!("Normal panic"); impl<'a> PanicInfo<'a>
[src]
fn payload(&self) -> &Any + SendReturns the payload associated with the panic.
This will commonly, but not always, be a &'static str or String.
use std::panic;
panic::set_hook(Box::new(|panic_info| {
println!("panic occured: {:?}", panic_info.payload().downcast_ref::<&str>().unwrap());
}));
panic!("Normal panic"); fn location(&self) -> Option<&Location>Returns information about the location from which the panic originated, if available.
This method will currently always return Some, but this may change in future versions.
use std::panic;
panic::set_hook(Box::new(|panic_info| {
if let Some(location) = panic_info.location() {
println!("panic occured in file '{}' at line {}", location.file(), location.line());
} else {
println!("panic occured but can't get location information...");
}
}));
panic!("Normal panic"); impl<'a> Debug for PanicInfo<'a>
[src]
fn fmt(&self, __arg_0: &mut Formatter) -> ResultFormats the value using the given formatter.
© 2010 The Rust Project Developers
Licensed under the Apache License, Version 2.0 or the MIT license, at your option.
https://doc.rust-lang.org/std/panic/struct.PanicInfo.html