28#ifndef LUMIERA_LIFECYCLE_H
29#define LUMIERA_LIFECYCLE_H
71 typedef void (*
Hook)(void);
Token or Atom with distinct identity.
define and register a callback for a specific lifecycle event.
static void add(Symbol eventLabel, Hook callbackFun)
alternative, static interface for registering a callback
static void trigger(Symbol eventLabel)
trigger lifecycle callbacks registered under the given label
Any copy and copy construction prohibited.
void lumiera_LifecycleHook_add(const char *eventLabel, void callbackFun(void))
const char * lumiera_ON_GLOBAL_SHUTDOWN
void lumiera_Lifecycle_trigger(const char *eventLabel)
const char * lumiera_ON_BASIC_INIT
const char * lumiera_ON_GLOBAL_INIT
Lumiera public interface.
CStr ON_GLOBAL_INIT
to be triggered in main()
CStr ON_GLOBAL_SHUTDOWN
to be triggered at the end of main()
CStr ON_EMERGENCY
activated on shutdown after premature failure of a subsystem
CStr ON_BASIC_INIT
automatic static init. treated specially to run as soon as possible
Mix-Ins to allow or prohibit various degrees of copying and cloning.
Marker types to indicate a literal string and a Symbol.