Re-hi,
On Wed, Apr 12, 2006 at 12:29:48PM +0200, Armin Rigo wrote:
> class CPyObjSpace:
>
> def newint(self, intval):
> return ctypes.pydll.PyInt_FromLong(intval)
>
> def add(self, w_1, w_2):
> return ctypes.pydll.PyNumber_Add(w_1, w_2)
> ...
Correction here. It's not 'ctypes.pydll' -- this one is an object used
to load other DLLs following the CPython calling convensions. It's
'ctypes.pythonapi' instead, and it works on standard Linux installations
as well. Just try:
>>> from ctypes import *
>>> pythonapi.PyNumber_Add.restype = py_object
>>> pythonapi.PyNumber_Add(py_object(5), py_object(6))
11
(The result is 11 instead of py_object(11) because ctypes does automatic
unwrapping of some return types.)
A bientot,
Armin
_______________________________________________
[email protected]
http://codespeak.net/mailman/listinfo/pypy-dev