def fn(*args): #print(str(len(types)) + " " + str(len(args))) Errors.checkNumArgs(len(types), len(args), "ProxyObject", name) for arg in args: #(print("lift: " + str(arg))) if isinstance(arg, SFact): return LiftF(name, f, args, types=types, outType=outType) if len(types) is not 0: for i in range(len(args)): #print("checking " + repr(args[i]) + ' ' + repr(types[i])) Types.checkType("ProxyObject", name, args[i], types[i]) return f(*args)
def fn(*args): #print(str(len(types)) + " " + str(len(args))) Errors.checkNumArgs(len(types), len(args), "ProxyObject", name) for arg in args: #(print("lift: " + str(arg))) if isinstance(arg, SFact): return LiftF(name,f,args,types = types, outType = outType) if len(types) is not 0: for i in range(len(args)): #print("checking " + repr(args[i]) + ' ' + repr(types[i])) Types.checkType("ProxyObject", name, args[i], types[i]) return f(*args)
def start(self, expectedType = Types.anyType, obj = "ProxyObject"): self.args = list(self.args) argsLen = len(self.args) Types.addCheck(self) Types.checkType(obj, self, self.outType, expectedType) Errors.checkNumArgs(len(self.types), argsLen, obj, self) #list() call for pyhton 3 mapping support #print("LiftF: " + str(self.args)) ea = list(map(lambda x: maybeLift(x).start(), self.args)) #print("LiftF 2: " + str(ea)) #print("LiftF 3: " + str(ea[0][0].now())) for i in range(len(self.types)): Types.checkType(obj, self, ea[i][1], self.types[i]) #Some where between here and the Lift const return Lift(self.name,self.f, list(map(lambda x: x[0], ea))), self.outType
def start(self, expectedType=Types.anyType, obj="ProxyObject"): self.args = list(self.args) argsLen = len(self.args) Types.addCheck(self) Types.checkType(obj, self, self.outType, expectedType) Errors.checkNumArgs(len(self.types), argsLen, obj, self) #list() call for pyhton 3 mapping support #print("LiftF: " + str(self.args)) ea = list(map(lambda x: maybeLift(x).start(), self.args)) #print("LiftF 2: " + str(ea)) #print("LiftF 3: " + str(ea[0][0].now())) for i in range(len(self.types)): Types.checkType(obj, self, ea[i][1], self.types[i]) #Some where between here and the Lift const return Lift(self.name, self.f, list(map(lambda x: x[0], ea))), self.outType