Esempio n. 1
0
        // R(A), R(A+1), ..., R(A+B-2) = vararg
        internal static void vararg(Instruction i, ref LuaVM vm)
        {
            var ab_ = i.ABC();
            var a   = ab_.Item1 + 1;
            var b   = ab_.Item2;

            if (b != 1)
            {
                // b==0 or b>1
                vm.LoadVararg(b - 1);
                popResults(a, b, vm);
            }
        }
Esempio n. 2
0
        // R(A), R(A+1), ..., R(A+B-2) = vararg
        internal static void Vararg(Instruction i, ref LuaVM vm)
        {
            var(a, b, _) = i.ABC();
            a           += 1;

            if (b == 1)
            {
                return;
            }
            // b==0 or b>1
            vm.LoadVararg(b - 1);
            PopResults(a, b, ref vm);
        }