Exemple #1
0
    internal static void Vararg(Instruction i, ILuaVM vm)
    {
        var(a, b, _) = i.ABC();
        a           += 1;

        if (b != 1)
        {
            vm.LoadVararg(b - 1);
            PopResults(a, b, vm);
        }
    }
Exemple #2
0
        /// <summary>
        /// R(A), R(A + 1), ..., R(A + B - 2) = vararg
        /// </summary>
        public static void Vararg(Instruction ins, ILuaVM vm)
        {
            ins.ABC(out var a, out var b, out _);
            a += 1;

            if (b != 1)
            {
                vm.LoadVararg(b - 1);
                PopResults(a, b, vm);
            }
        }
Exemple #3
0
        //(iABC) R(A),R(A+1),....R(A+B-2) = vararg
        public static void Vararg(int i, ILuaVM vm)
        {
            int a = Instruction.GetA(i) + 1;
            int b = Instruction.GetB(i);

            if (b != 1)
            {
                vm.LoadVararg(b - 1);
                popResult(a, b, vm);
            }
        }