diff options
Diffstat (limited to 'libs/lua/LuaBridge/detail/Namespace.h')
-rw-r--r-- | libs/lua/LuaBridge/detail/Namespace.h | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/libs/lua/LuaBridge/detail/Namespace.h b/libs/lua/LuaBridge/detail/Namespace.h index 464d9d08a0..eae70dd41e 100644 --- a/libs/lua/LuaBridge/detail/Namespace.h +++ b/libs/lua/LuaBridge/detail/Namespace.h @@ -815,6 +815,13 @@ private: return *this; } + template <class MemFn> + Class <T>& addRefFunction (char const* name, MemFn mf) + { + CFunc::CallMemberRefFunctionHelper <MemFn, FuncTraits <MemFn>::isConstMemberFunction>::add (L, name, mf); + return *this; + } + //-------------------------------------------------------------------------- /** @@ -1032,6 +1039,17 @@ private: } template <class MemFn> + WSPtrClass <T>& addRefFunction (char const* name, MemFn mf) + { + set_weak_class (); + CFunc::CallMemberRefWPtrFunctionHelper <MemFn>::add (L, name, mf); + + set_shared_class (); + CFunc::CallMemberRefPtrFunctionHelper <MemFn>::add (L, name, mf); + return *this; + } + + template <class MemFn> WSPtrClass <T>& addConstructor () { set_weak_class (); |