Function std::intrinsics::try [] [src]

pub unsafe extern "rust-intrinsic" fn try(
    f: fn(*mut u8),
    data: *mut u8,
    local_ptr: *mut u8
) -> i32
🔬 This is a nightly-only experimental API. (core_intrinsics)

intrinsics are unlikely to ever be stabilized, instead they should be used through stabilized interfaces in the rest of the standard library

[]

Rust's "try catch" construct which invokes the function pointer f with the data pointer data.

The third pointer is a target-specific data pointer which is filled in with the specifics of the exception that occurred. For examples on Unix platforms this is a *mut *mut T which is filled in by the compiler and on MSVC it's *mut [usize; 2]. For more information see the compiler's source as well as std's catch implementation.