aboutsummaryrefslogtreecommitdiff
path: root/system/include
diff options
context:
space:
mode:
authorChad Austin <chad@imvu.com>2013-04-17 17:51:24 -0700
committerJukka Jylänki <jujjyl@gmail.com>2013-04-18 20:08:41 +0300
commita02d08a15f853665cee193c7f21e84f48bee8845 (patch)
tree5d36ca5d1787c613ae34d48dcf6fdd0096cf76e6 /system/include
parentb4cc2e135b1d611fa54c28bf05aada1657c97b30 (diff)
Make select_overload work for member functions
Diffstat (limited to 'system/include')
-rwxr-xr-xsystem/include/emscripten/bind.h12
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(