From 64f89347883d519b202711a11d2ea175bd80be37 Mon Sep 17 00:00:00 2001 From: chai Date: Sun, 15 Nov 2020 09:59:22 +0800 Subject: +lua binding --- Runtime/Scripting/luax_ref.cpp | 72 ------------------------------------------ 1 file changed, 72 deletions(-) delete mode 100644 Runtime/Scripting/luax_ref.cpp (limited to 'Runtime/Scripting/luax_ref.cpp') diff --git a/Runtime/Scripting/luax_ref.cpp b/Runtime/Scripting/luax_ref.cpp deleted file mode 100644 index d4be775..0000000 --- a/Runtime/Scripting/luax_ref.cpp +++ /dev/null @@ -1,72 +0,0 @@ -#include "luax_vm.h" -#include "luax_ref.h" - -namespace Luax -{ - - LuaxRef::LuaxRef(int mode) - : mRefID(LUA_NOREF) - , mMode(mode) - { - } - - LuaxRef::~LuaxRef() - { - } - - LuaxRef::operator bool() - { - return (mRefID != LUA_NOREF); - } - - bool LuaxRef::PushRef(LuaxState& state) - { - assert(mRefID != LUA_NOREF); - - LuaxVM* vm = state.GetVM(); - if (!vm) return false; - if (mMode == STRONG_REF) - { - LuaxRefTable& table = vm->GetStrongRefTable(); - table.PushRef(state, mRefID); - } - else if (mMode == WEAK_REF) - { - LuaxRefTable& table = vm->GetWeakRefTable(); - table.PushRef(state, mRefID); - } - else - { - state.PushNil(); - return false; - } - return true; - } - - void LuaxRef::SetRef(LuaxState& state, int idx) - { - LuaxVM* vm = state.GetVM(); - if (!vm) return; - if (mMode == STRONG_REF) - { - LuaxRefTable& table = vm->GetStrongRefTable(); - mRefID = table.Ref(state, idx); - } - else if (mMode == WEAK_REF) - { - LuaxRefTable& table = vm->GetWeakRefTable(); - mRefID = table.Ref(state, idx); - } - } - - LuaxStrongRef::LuaxStrongRef() - : LuaxRef(STRONG_REF) - { - } - - LuaxWeakRef::LuaxWeakRef() - : LuaxRef(WEAK_REF) - { - } - -} -- cgit v1.1-26-g67d0