module core.rt.eh

Code Map

module core.rt.eh;


//! Set a callback that happens just before a exception is thrown.
fn vrt_eh_set_callback(cb: fn (Throwable, string) (void));
//! Perform a throw of the given Throwable object.
fn vrt_eh_throw(t: Throwable, location: string);
//! Throw a Throwable that has previously been thrown.
fn vrt_eh_rethrow(t: Throwable);
//! Throw an error for an invalid slice.
fn vrt_eh_throw_slice_error(location: string);
//! Throw an assert for an assert failure.
fn vrt_eh_throw_assert_error(location: string, msg: string);
//! Throw an AA key lookup failure error.
fn vrt_eh_throw_key_not_found_error(location: string);
fn vrt_eh_personality_v0() i32;
fn vrt_eh_set_callback(cb: fn (Throwable, string) (void))

Set a callback that happens just before a exception is thrown.

The callback is per thread (for those platforms that support TLS).

Do not throw from the callback, as it will explode.

fn vrt_eh_throw(t: Throwable, location: string)

Perform a throw of the given Throwable object.

fn vrt_eh_rethrow(t: Throwable)

Throw a Throwable that has previously been thrown.

fn vrt_eh_throw_slice_error(location: string)

Throw an error for an invalid slice.

fn vrt_eh_throw_assert_error(location: string, msg: string)

Throw an assert for an assert failure.

fn vrt_eh_throw_key_not_found_error(location: string)

Throw an AA key lookup failure error.