summaryrefslogtreecommitdiff
path: root/share/swig/3.0.12/ocaml/std_common.i
diff options
context:
space:
mode:
Diffstat (limited to 'share/swig/3.0.12/ocaml/std_common.i')
-rw-r--r--share/swig/3.0.12/ocaml/std_common.i22
1 files changed, 22 insertions, 0 deletions
diff --git a/share/swig/3.0.12/ocaml/std_common.i b/share/swig/3.0.12/ocaml/std_common.i
new file mode 100644
index 0000000..6523af0
--- /dev/null
+++ b/share/swig/3.0.12/ocaml/std_common.i
@@ -0,0 +1,22 @@
+/* -----------------------------------------------------------------------------
+ * std_common.i
+ *
+ * SWIG typemaps for STL - common utilities
+ * ----------------------------------------------------------------------------- */
+
+%include <std/std_except.i>
+
+%apply size_t { std::size_t };
+
+%{
+#include <string>
+SWIGINTERNINLINE
+CAML_VALUE SwigString_FromString(const std::string &s) {
+ return caml_val_string((char *)s.c_str());
+}
+
+SWIGINTERNINLINE
+std::string SwigString_AsString(CAML_VALUE o) {
+ return std::string((char *)caml_ptr_val(o,0));
+}
+%}