# 1.10.0[−][src]Function std::panic::take_hook

###

    pub fn take_hook() -> Box<dyn Fn(&PanicInfo<'_>) + Sync + Send + 'static>ⓘNotable traits for Box<F>impl<F> Future for Box<F> where
        F: Unpin + Future + ?Sized,     type Output = <F as Future>::Output;impl<I> Iterator for Box<I> where
        I: Iterator + ?Sized,     type Item = <I as Iterator>::Item;impl<R: Read + ?Sized> Read for Box<R>impl<W: Write + ?Sized> Write for Box<W>

Unregisters the current panic hook, returning it.

See also the function `set_hook`.

If no custom hook is registered, the default hook will be returned.

# Panics

Panics if called from a panicking thread.

# Examples

The following will print "Normal panic":

ⓘThis example panics

    use std::panic;

    panic::set_hook(Box::new(|_| {
        println!("Custom panic hook");
    }));

    let _ = panic::take_hook();

    panic!("Normal panic");

Run