W3cubDocs

/Rust

Struct std::panic::Location

pub struct Location<'a> { /* fields omitted */ }

A struct containing information about the location of a panic.

This structure is created by the location method of PanicInfo.

Examples

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");

Methods

impl<'a> Location<'a>[src]

pub fn file(&self) -> &str[src]

Returns the name of the source file from which the panic originated.

Examples

use std::panic;

panic::set_hook(Box::new(|panic_info| {
    if let Some(location) = panic_info.location() {
        println!("panic occurred in file '{}'", location.file());
    } else {
        println!("panic occurred but can't get location information...");
    }
}));

panic!("Normal panic");

pub fn line(&self) -> u32[src]

Returns the line number from which the panic originated.

Examples

use std::panic;

panic::set_hook(Box::new(|panic_info| {
    if let Some(location) = panic_info.location() {
        println!("panic occurred at line {}", location.line());
    } else {
        println!("panic occurred but can't get location information...");
    }
}));

panic!("Normal panic");

pub fn column(&self) -> u32[src]1.25.0

Returns the column from which the panic originated.

Examples

use std::panic;

panic::set_hook(Box::new(|panic_info| {
    if let Some(location) = panic_info.location() {
        println!("panic occurred at column {}", location.column());
    } else {
        println!("panic occurred but can't get location information...");
    }
}));

panic!("Normal panic");

Trait Implementations

impl<'a> Debug for Location<'a>[src]

impl<'_> Display for Location<'_>[src]1.26.0

Auto Trait Implementations

impl<'a> UnwindSafe for Location<'a>

impl<'a> RefUnwindSafe for Location<'a>

impl<'a> Unpin for Location<'a>

impl<'a> Send for Location<'a>

impl<'a> Sync for Location<'a>

Blanket Implementations

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> From<T> for T[src]

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

ⓘImportant traits for &'_ mut F
impl<'_, F> Future for &'_ mut F where
    F: Unpin + Future + ?Sized, 
    type Output = <F as Future>::Output;
impl<'_, I> Iterator for &'_ mut I where
    I: Iterator + ?Sized, 
    type Item = <I as Iterator>::Item;
impl<'_, R: Read + ?Sized> Read for &'_ mut R
impl<'_, W: Write + ?Sized> Write for &'_ mut W

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

ⓘImportant traits for &'_ mut F
impl<'_, F> Future for &'_ mut F where
    F: Unpin + Future + ?Sized, 
    type Output = <F as Future>::Output;
impl<'_, I> Iterator for &'_ mut I where
    I: Iterator + ?Sized, 
    type Item = <I as Iterator>::Item;
impl<'_, R: Read + ?Sized> Read for &'_ mut R
impl<'_, W: Write + ?Sized> Write for &'_ mut W

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> ToString for T where
    T: Display + ?Sized
[src]

© 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.Location.html