summaryrefslogtreecommitdiff
path: root/share/swig/3.0.12/mzscheme/mzscheme.swg
diff options
context:
space:
mode:
Diffstat (limited to 'share/swig/3.0.12/mzscheme/mzscheme.swg')
-rw-r--r--share/swig/3.0.12/mzscheme/mzscheme.swg55
1 files changed, 55 insertions, 0 deletions
diff --git a/share/swig/3.0.12/mzscheme/mzscheme.swg b/share/swig/3.0.12/mzscheme/mzscheme.swg
new file mode 100644
index 0000000..9ae2428
--- /dev/null
+++ b/share/swig/3.0.12/mzscheme/mzscheme.swg
@@ -0,0 +1,55 @@
+/* -----------------------------------------------------------------------------
+ * mzscheme.swg
+ *
+ * SWIG Configuration File for MzScheme.
+ * This file is parsed by SWIG before reading any other interface file.
+ * ----------------------------------------------------------------------------- */
+
+/* Include headers */
+%runtime "swigrun.swg" // Common C API type-checking code
+%runtime "mzrun.swg"
+
+%define SWIG_APPEND_VALUE(value)
+ values[lenv++] = value
+%enddef
+
+/* Definitions */
+#define SWIG_malloc(size) swig_malloc(size, FUNC_NAME)
+#define SWIG_free(mem) free(mem)
+
+#define SWIG_convert_short(o) \
+ SWIG_convert_integer(o, - (1 << (8 * sizeof(short) - 1)), \
+ (1 << (8 * sizeof(short) - 1)) - 1, \
+ FUNC_NAME, $argnum-1, argc, argv)
+#define SWIG_convert_int(o) \
+ SWIG_convert_integer(o, INT_MIN, INT_MAX, \
+ FUNC_NAME, $argnum-1, argc, argv)
+#define SWIG_convert_long(o) \
+ SWIG_convert_integer(o, LONG_MIN, LONG_MAX, \
+ FUNC_NAME, $argnum-1, argc, argv)
+#define SWIG_convert_unsigned_short(o) \
+ SWIG_convert_unsigned_integer(o, 0, \
+ (1 << (8 * sizeof(short))) - 1, \
+ FUNC_NAME, $argnum-1, argc, argv)
+#define SWIG_convert_unsigned_int(o) \
+ SWIG_convert_unsigned_integer(o, 0, UINT_MAX, \
+ FUNC_NAME, $argnum-1, argc, argv)
+#define SWIG_convert_unsigned_long(o) \
+ SWIG_convert_unsigned_integer(o, 0, ULONG_MAX, \
+ FUNC_NAME, $argnum-1, argc, argv)
+
+/* Guile compatibility kludges */
+#define SCM_VALIDATE_VECTOR(argnum, value) (void)0
+#define SCM_VALIDATE_LIST(argnum, value) (void)0
+
+/* Read in standard typemaps. */
+%include <typemaps.i>
+
+%insert(init) "swiginit.swg"
+
+%init %{
+Scheme_Object *scheme_reload(Scheme_Env *env) {
+ Scheme_Env *menv = SWIG_MZSCHEME_CREATE_MENV(env);
+
+ SWIG_InitializeModule((void *) env);
+%}