diff options
author | Chad Austin <chad@imvu.com> | 2013-04-17 17:51:24 -0700 |
---|---|---|
committer | Jukka Jylänki <jujjyl@gmail.com> | 2013-04-18 20:08:41 +0300 |
commit | a02d08a15f853665cee193c7f21e84f48bee8845 (patch) | |
tree | 5d36ca5d1787c613ae34d48dcf6fdd0096cf76e6 /system/include | |
parent | b4cc2e135b1d611fa54c28bf05aada1657c97b30 (diff) |
Make select_overload work for member functions
Diffstat (limited to 'system/include')
-rwxr-xr-x | system/include/emscripten/bind.h | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/system/include/emscripten/bind.h b/system/include/emscripten/bind.h index cd35a238..4d2f4ac8 100755 --- a/system/include/emscripten/bind.h +++ b/system/include/emscripten/bind.h @@ -230,6 +230,18 @@ namespace emscripten { } namespace internal { + template<typename ClassType, typename Signature> + struct MemberFunctionType { + typedef Signature (ClassType::*type); + }; + } + + template<typename Signature, typename ClassType> + typename internal::MemberFunctionType<ClassType, Signature>::type select_overload(Signature (ClassType::*fn)) { + return fn; + } + + namespace internal { template<typename ReturnType, typename... Args> struct Invoker { static typename internal::BindingType<ReturnType>::WireType invoke( |