return 0;
}
-static
-void start_callback_smobs()
+
+void init_cxx_function_smobs()
{
callback_tag = scm_make_smob_type_mfpe ("callback", 0,
mark_smob, free_smob,
}
SCM
-smobify_callback (Cpp_function cb )
+smobify_cxx_function (Cxx_function cb )
{
SCM z;
return z;
}
-
-ADD_SCM_INIT_FUNC(callback, start_callback_smobs);
+
+
+Cxx_function
+unsmob_cxx_function (SCM x)
+{
+ if (SCM_CELL_TYPE(x) == callback_tag)
+ return (Cxx_function) SCM_CELL_WORD_1(x);
+ else
+ return 0;
+}
+
+