aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorjinsuck <jkim@imvu.com>2012-12-20 19:20:29 -0800
committerJukka Jylänki <jujjyl@gmail.com>2013-04-12 14:22:41 +0300
commit77f2b4588b65c4c3641131ee71657eaaa8d3dcaf (patch)
tree436c347729e5e4e1853c536a480ff51480b0e033
parenteca17e7c1b78673821cef5d093768d5dfbff329d (diff)
add a method to conveniently clone to shared pointer of wrapper
-rwxr-xr-xsystem/include/emscripten/bind.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/system/include/emscripten/bind.h b/system/include/emscripten/bind.h
index 56a3b62c..3f857a2a 100755
--- a/system/include/emscripten/bind.h
+++ b/system/include/emscripten/bind.h
@@ -902,6 +902,11 @@ namespace emscripten {
return std::shared_ptr<InterfaceType>(ip);
}
+ template<class ConcreteWrapperType>
+ static std::shared_ptr<ConcreteWrapperType> cloneToSharedWrapperPtr(InterfaceType& i) {
+ return std::dynamic_pointer_cast<ConcreteWrapperType>(cloneToSharedPtr<ConcreteWrapperType>(i));
+ }
+
void initialize(internal::EM_VAL handle) {
if (jsobj) {
internal::_embind_fatal_error(