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

        vm.PushNil();
        for (int j = a; j <= a + b; j++)
        {
            vm.Copy(-1, j);
        }
        vm.Pop(1);
    }
예제 #2
0
        /// <summary>
        /// R(A), R(A + 1), ..., R(A + B) = nil
        /// </summary>
        public static void LoadNil(Instruction ins, ILuaVM vm)
        {
            ins.ABC(out var a, out var b, out _);
            a += 1;

            vm.PushNil();
            for (var j = a; j <= a + b; j++)
            {
                vm.Copy(-1, j);
            }
            vm.Pop(1);
        }
예제 #3
0
        public static void LoadNil(int i, ILuaVM vm)
        {
            int a = Instruction.GetA(i) + 1;
            int b = Instruction.GetB(i);

            vm.PushNil();
            for (int j = a; j <= a + b; j++)
            {
                vm.Copy(-1, j);
            }
            vm.Pop(1);
        }