public static string GetRefString(IntPtr L, int index)
        {
            StrLen len;
            IntPtr intPtr = LuaLib.lua_tostringptr(L, index, out len);
            string text;

            if (!LuaHook.TryGetLuaString(intPtr, out text))
            {
                text = LuaDLL.lua_tostring(L, index);
                if (!string.IsNullOrEmpty(text))
                {
                    text = string.Intern(text);
                }
                LuaHook.RefString(intPtr, index, text, L);
            }
            return(text);
        }
Beispiel #2
0
        public static string GetRefString(IntPtr L, int index)
        {
#if XLUA || TOLUA || SLUA
            StrLen len;
            IntPtr intPtr = LuaLib.lua_tostringptr(L, index, out len);
            string text;
            if (!TryGetLuaString(intPtr, out text))
            {
                text = LuaDLL.lua_tostring(L, index);
                if (!string.IsNullOrEmpty(text))
                {
                    text = string.Intern(text);
                }
                RefString(intPtr, index, text, L);
            }
            return(text);
#else
            return("");
#endif
        }