Ejemplo n.º 1
0
 def call_keywords(self, space, w_self, __args__):
     func = rffi.cast(PyCFunctionKwArgs, self.ml.c_ml_meth)
     py_args = tuple_from_args_w(space, __args__.arguments_w)
     w_kwargs = w_kwargs_from_args(space, __args__)
     try:
         return generic_cpy_call(space, func, w_self, py_args, w_kwargs)
     finally:
         decref(space, py_args)
Ejemplo n.º 2
0
 def call_varargs(self, space, w_self, __args__):
     state = space.fromcache(State)
     func = self.ml.c_ml_meth
     py_args = tuple_from_args_w(space, __args__.arguments_w)
     try:
         return generic_cpy_call(space, func, w_self, py_args)
     finally:
         decref(space, py_args)
Ejemplo n.º 3
0
 def call_oldargs(self, space, w_self, __args__):
     func = self.ml.c_ml_meth
     length = len(__args__.arguments_w)
     if length == 0:
         py_args = lltype.nullptr(PyObject.TO)
     elif length == 1:
         py_args = make_ref(space, __args__.arguments_w[0])
     else:
         py_args = tuple_from_args_w(space, __args__.arguments_w)
     try:
         return generic_cpy_call(space, func, w_self, py_args)
     finally:
         decref(space, py_args)