


The standard library Runtime_Signals api defines access to the runtime signals facility, which enables Mythryl-level handling of both POSIX interprocess signnals like SIGALRM and also internally generated signals for monitoring (for example) garbage collection.
The Runtime_Signals api is implemented by the runtime_signals package.
The Runtime_Signals api source code is in src/lib/std/src/nj/runtime-signals.api.
The above information is manually maintained and may contain errors.
api { eqtype Signal ;
Signal_Action
= DEFAULT | HANDLER (Signal , Int , fate::Fate(Void ))
-> fate::Fate(Void ) | IGNORE;
list_signals : Void -> List(Signal );
signal_name : Signal -> String;
get_signal_by_name : String -> Null_Or(Signal );
set_signal_handler : (Signal , Signal_Action) -> Signal_Action;
override_signal_handler : (Signal , Signal_Action) -> Signal_Action;
get_signal_handler : Signal -> Signal_Action;
Signal_Mask = MASK List(Signal ) | MASK_ALL;
mask_signals : Signal_Mask -> Void;
unmask_signals : Signal_Mask -> Void;
masked : Void -> Signal_Mask;
pause : Void -> Void;
interrupt_signal : Signal;
alarm_signal : Signal;
terminate_signal : Signal;
heapcleaning_done_signal : Signal;
};


