示例#1
0
 /// <summary>
 /// if R(A + 1) != null
 ///     R(A) = R(A + 1); pc += sBx
 /// </summary>
 public static void TForLoop(Instruction ins, ILuaVM vm)
 {
     ins.AsBx(out var a, out var sbx);
     a += 1;
     if (!vm.IsNil(a + 1))
     {
         vm.Copy(a + 1, a);
         vm.AddPC(sbx);
     }
 }
示例#2
0
    internal static void TForLoop(Instruction i, ILuaVM vm)
    {
        var(a, sBx) = i.AsBx();
        a          += 1;

        if (!vm.IsNil(a + 1))
        {
            vm.Copy(a + 1, a);
            vm.AddPC(sBx);
        }
    }