public (Action tritonAction, Action nluaAction) Benchmark_WriteObject(Triton.Lua triton, NLua.Lua nlua)
        {
            var tritonTable = triton.CreateTable();
            var nluaTable   = (NLua.LuaTable)nlua.DoString("return {}")[0];

            void Triton() => tritonTable["test"] = new object();
            void NLua() => nluaTable["test"]     = new object();

            return(Triton, NLua);
        }
        public (Action tritonAction, Action nluaAction) Benchmark_WriteReference(Triton.Lua triton, NLua.Lua nlua)
        {
            var tritonTable    = triton.CreateTable();
            var nluaTable      = (NLua.LuaTable)nlua.DoString("return {}")[0];
            var tritonFunction = triton.CreateFunction("");
            var nluaFunction   = nlua.LoadString("", "test");

            void Triton() => tritonTable["test"] = tritonFunction;
            void NLua() => nluaTable["test"]     = nluaFunction;

            return(Triton, NLua);
        }
示例#3
0
        public (Action tritonAction, Action nluaAction) Benchmark_ReadNil(Triton.Lua triton, NLua.Lua nlua)
        {
            var tritonTable = triton.CreateTable();
            var nluaTable   = (NLua.LuaTable)nlua.DoString("return {}")[0];

            void Triton()
            {
                var t = triton["test"];
            }

            void NLua()
            {
                var t = nluaTable["test"];
            }

            return(Triton, NLua);
        }
示例#4
0
        public (Action tritonAction, Action nluaAction) Benchmark_ReadReference(Triton.Lua triton, NLua.Lua nlua)
        {
            var tritonTable = triton.CreateTable();
            var nluaTable   = (NLua.LuaTable)nlua.DoString("return {}")[0];

            tritonTable["test"] = triton.CreateFunction("");
            nluaTable["test"]   = nlua.LoadString("", "test");

            void Triton()
            {
                var t = tritonTable["test"];
            }

            void NLua()
            {
                var t = nluaTable["test"];
            }

            return(Triton, NLua);
        }