aboutsummaryrefslogtreecommitdiff
path: root/src/lua/luaopen_types.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/lua/luaopen_types.h')
-rw-r--r--src/lua/luaopen_types.h19
1 files changed, 11 insertions, 8 deletions
diff --git a/src/lua/luaopen_types.h b/src/lua/luaopen_types.h
index be59157..78083c6 100644
--- a/src/lua/luaopen_types.h
+++ b/src/lua/luaopen_types.h
@@ -64,11 +64,14 @@ namespace lua
T* obj = (T*)object;
delete obj;
}
- T& operator *()
- {
- T* obj = (T*)object;
- return *obj;
- }
+ T* operator->()
+ {
+ return (T*)object;
+ }
+ T* getObject()
+ {
+ return (T*)object;
+ }
private:
Ref(const Ref<T>& ref);
};
@@ -97,12 +100,12 @@ namespace lua
template<class T>
Ref<T>& getRef()
{
- Ref<T>* ref = (Ref<T>*) reference;
- return *ref;
+ return *(Ref<T>*) reference;
}
- Reference* reference; // acctual object binded
const char* type; // type name and metatable name
+ Reference* reference; // acctual object binded
+
};
} // lua