From 2956fe44fc0e17c69f3caec5a56397dd74765772 Mon Sep 17 00:00:00 2001 From: Kaz Kylheku Date: Thu, 15 Oct 2015 22:28:38 -0700 Subject: Introspection over catch and handle frames. * unwind.c (types_s, jump_s): New symbol variables. (frame_type, catch_frame_type, handle_frame_type): New globals denoting struct types. (uw_get_frames, uw_invoke_catch): New functions. (uw_late_init): Initialize new global variables. Register get-frames and invoke-catch intrinsics. * unwind.h (uw_get_frames, uw_invoke_catch): Declared. * txr.1: Documented frame, catch-frame, handle-frame, get-frames and invoke-catch. --- unwind.h | 2 ++ 1 file changed, 2 insertions(+) (limited to 'unwind.h') diff --git a/unwind.h b/unwind.h index 207b8ce9..3dc9c387 100644 --- a/unwind.h +++ b/unwind.h @@ -126,6 +126,8 @@ void uw_pop_frame(uw_frame_t *); void uw_pop_until(uw_frame_t *); uw_frame_t *uw_current_frame(void); uw_frame_t *uw_current_exit_point(void); +val uw_get_frames(void); +val uw_invoke_catch(val catch_frame, val sym, struct args *); void uw_init(void); void uw_late_init(void); -- cgit v1.2.3