summaryrefslogtreecommitdiff
path: root/Runner/Scripting/luax_ref.h
diff options
context:
space:
mode:
authorchai <chaifix@163.com>2021-10-17 16:01:30 +0800
committerchai <chaifix@163.com>2021-10-17 16:01:30 +0800
commit6e73ca6ada8a41692809dae5db89c8db0675ce1e (patch)
tree3ca6f06b29b3e2c183750ddcff8d7a09d0785e6b /Runner/Scripting/luax_ref.h
parente13f699ee5f575198552d94ada1167305c82bb2f (diff)
-Runner
Diffstat (limited to 'Runner/Scripting/luax_ref.h')
-rw-r--r--Runner/Scripting/luax_ref.h62
1 files changed, 0 insertions, 62 deletions
diff --git a/Runner/Scripting/luax_ref.h b/Runner/Scripting/luax_ref.h
deleted file mode 100644
index d0001f2..0000000
--- a/Runner/Scripting/luax_ref.h
+++ /dev/null
@@ -1,62 +0,0 @@
-#ifndef __LUAX_REF_H__
-#define __LUAX_REF_H__
-
-#include "luax_config.h"
-#include "luax_state.h"
-
-namespace Luax
-{
-
- ///
- /// 引用,存在LUA_REGISTRYINDEX下面的两个表里
- ///
- class LuaxRef
- {
- public:
-
- enum RefMode
- {
- STRONG_REF,
- WEAK_REF
- };
-
- LuaxRef(int mode = STRONG_REF);
- virtual ~LuaxRef();
-
- operator bool();
-
- void SetRef(LuaxState& state, int idx);
- bool PushRef(LuaxState& state);
-
- int GetRefID();
-
- private:
-
- int mRefID; // luaL_ref
- int mMode; // strong or weak
-
- };
-
- ///
- /// 强引用,在LUA_REGISTRYINDEX["_LUAX_STRONGREF_TABLE"]里,保证lua object不会被回收。
- ///
- class LuaxStrongRef: public LuaxRef
- {
- public:
- LuaxStrongRef();
-
- };
-
- ///
- /// 弱引用,在LUA_REGISTRYINDEX["_LUAX_WEAKREF_TABLE"]里,不影响lua object的回收,只是作为一个方便取lua object的映射。
- ///
- class LuaxWeakRef : public LuaxRef
- {
- public:
- LuaxWeakRef();
-
- };
-
-}
-
-#endif \ No newline at end of file