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 occurred: {:?}", panic_info.payload().downcast_ref::<&str>().unwrap());
}));
panic!("Normal panic"); impl<'a> PanicInfo<'a>
[src]
pub fn payload(&self) -> &(Any + Send)
[src]
Returns 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 occurred: {:?}", panic_info.payload().downcast_ref::<&str>().unwrap());
}));
panic!("Normal panic"); pub fn location(&self) -> Option<&Location>
[src]
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 occurred in file '{}' at line {}", location.file(),
location.line());
} else {
println!("panic occurred but can't get location information...");
}
}));
panic!("Normal panic"); impl<'a> Debug for PanicInfo<'a>
[src]
fn fmt(&self, __arg_0: &mut Formatter) -> Result
[src]
Formats the value using the given formatter. Read more
© 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