aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChad Austin <chad@chadaustin.me>2012-11-01 18:37:40 -0700
committerJukka Jylänki <jujjyl@gmail.com>2013-04-12 14:21:34 +0300
commit6014feed714b61f57f26254de6a2d2c7d89363e5 (patch)
tree678d343fe1d72bd83fe4507203da338652cd25e0
parent3f20ded152916e31d7c85763074686461db7e3b8 (diff)
Add support for raw pointers to embind
-rw-r--r--src/embind/embind.js3
-rw-r--r--system/include/emscripten/wire.h8
2 files changed, 8 insertions, 3 deletions
diff --git a/src/embind/embind.js b/src/embind/embind.js
index dd8e2b3b..8cfb87c8 100644
--- a/src/embind/embind.js
+++ b/src/embind/embind.js
@@ -428,6 +428,9 @@ function __embind_register_raw_pointer(
var name = pointeeType.name + '*';
registerType(pointerType, name, {
name: name,
+ toWireType: function(destructors, o) {
+ return o.ptr;
+ }
});
}
diff --git a/system/include/emscripten/wire.h b/system/include/emscripten/wire.h
index ba78906b..276042aa 100644
--- a/system/include/emscripten/wire.h
+++ b/system/include/emscripten/wire.h
@@ -212,10 +212,12 @@ namespace emscripten {
};
template<typename T>
- struct BindingType<T*>;
+ struct BindingType<T*> {
+ typedef T* WireType;
- template<typename T>
- struct BindingType<AllowedRawPointer<T>> {
+ static T* fromWireType(WireType wt) {
+ return wt;
+ }
};
template<typename Enum>