Exemple #1
0
 def gettabup(self, vm: LuaVM):
     a, b, c = self.getAbc()
     a += 1
     b += 1
     vm.GetRk(c)
     vm.GetTable(vm.LuaUpvalueIndex(b))
     vm.Replace(a)
Exemple #2
0
 def gettable(self, vm: LuaVM):
     a, b, c = self.getAbc()
     a += 1
     b += 1
     vm.GetRk(c)
     vm.GetTable(b)
     vm.Replace(a)
Exemple #3
0
 def self(self, vm: LuaVM):
     a, b, c = self.getAbc()
     a += 1
     b += 1
     vm.Copy(b, a + 1)
     vm.GetRk(c)
     vm.GetTable(b)
     vm.Replace(a)
Exemple #4
0
 def _popResults(self, a: int, c: int, vm: LuaVM):
     if c is 1:
         pass
     elif c > 1:
         for i in range(a + c - 2, a - 1, -1):
             vm.Replace(i)
     else:
         vm.CheckStack(1)
         vm.PushInteger(a)
Exemple #5
0
 def closure(self, vm: LuaVM):
     a, bx = self.getAbx()
     a += 1
     vm.LoadProto(bx)
     vm.Replace(a)
Exemple #6
0
 def newtable(self, vm: LuaVM):
     a, b, c = self.getAbc()
     a += 1
     vm.CreateTable(FbToInt(b), FbToInt(c))
     vm.Replace(a)