/* -----------------------------------------------------------------------------
- * $Id: HsFFI.h,v 1.15 2001/10/29 11:33:37 simonmar Exp $
*
* (c) The GHC Team, 2000
*
#endif
/* get types from GHC's runtime system */
-#include "config.h"
+#include "ghcconfig.h"
+#include "RtsConfig.h"
#include "StgTypes.h"
/* get limits for integral types */
#define HS_CHAR_MIN 0
#define HS_CHAR_MAX 0x10FFFF
+/* is it true or not? */
+#define HS_BOOL_FALSE 0
+#define HS_BOOL_TRUE 1
+
+#define HS_BOOL_MIN HS_BOOL_FALSE
+#define HS_BOOL_MAX HS_BOOL_TRUE
+
/* this mirrors the distinction of cases in StgTypes.h */
#if SIZEOF_VOID_P == 8
#define HS_INT_MIN __INT64_MIN
#define HS_DOUBLE_MAX_EXP DBL_MAX_EXP
#define HS_DOUBLE_MAX_10_EXP DBL_MAX_10_EXP
+extern void hs_init (int *argc, char **argv[]);
+extern void hs_exit (void);
+extern void hs_set_argv (int argc, char *argv[]);
+extern void hs_add_root (void (*init_root)(void));
+
+extern void hs_perform_gc (void);
+
+extern void hs_free_stable_ptr (HsStablePtr sp);
+extern void hs_free_fun_ptr (HsFunPtr fp);
+
/* -------------------------------------------------------------------------- */
#ifdef __cplusplus