aboutsummaryrefslogtreecommitdiff
path: root/system/lib/embind
diff options
context:
space:
mode:
authorAlon Zakai <alonzakai@gmail.com>2012-10-01 10:48:28 -0700
committerAlon Zakai <alonzakai@gmail.com>2012-10-01 10:48:28 -0700
commit375982d9c18ec64764c9ab14406e5712493e2cb3 (patch)
tree809a0bc40c172aa6fdd5c6312a2e1ba72b5fbb7f /system/lib/embind
parent7eaa78060c34489c7e56193c725641303d520f31 (diff)
parent58056b5383b1cdcd4f537fad82f9d4a03fb2556e (diff)
Merge pull request #592 from imvu/embind-pull-request
Embind pull request
Diffstat (limited to 'system/lib/embind')
-rwxr-xr-xsystem/lib/embind/bind.cpp34
1 files changed, 34 insertions, 0 deletions
diff --git a/system/lib/embind/bind.cpp b/system/lib/embind/bind.cpp
new file mode 100755
index 00000000..b63a86aa
--- /dev/null
+++ b/system/lib/embind/bind.cpp
@@ -0,0 +1,34 @@
+#include <emscripten/bind.h>
+
+using namespace emscripten;
+
+namespace emscripten {
+ namespace internal {
+ void registerStandardTypes() {
+ static bool first = true;
+ if (first) {
+ first = false;
+
+ _embind_register_void(getTypeID<void>(), "void");
+
+ _embind_register_bool(getTypeID<bool>(), "bool", true, false);
+
+ _embind_register_integer(getTypeID<char>(), "char");
+ _embind_register_integer(getTypeID<signed char>(), "signed char");
+ _embind_register_integer(getTypeID<unsigned char>(), "unsigned char");
+ _embind_register_integer(getTypeID<signed short>(), "short");
+ _embind_register_integer(getTypeID<unsigned short>(), "unsigned short");
+ _embind_register_integer(getTypeID<signed int>(), "int");
+ _embind_register_integer(getTypeID<unsigned int>(), "unsigned int");
+ _embind_register_integer(getTypeID<signed long>(), "long");
+ _embind_register_integer(getTypeID<unsigned long>(), "unsigned long");
+
+ _embind_register_float(getTypeID<float>(), "float");
+ _embind_register_float(getTypeID<double>(), "double");
+
+ _embind_register_cstring(getTypeID<std::string>(), "std::string");
+ _embind_register_emval(getTypeID<val>(), "emscripten::val");
+ }
+ }
+ }
+}