[pypy-svn] r72810 - in pypy/branch/cpython-extension/pypy/module/cpyext: . test
jandem at codespeak.net
jandem at codespeak.net
Thu Mar 25 15:26:41 CET 2010
Author: jandem
Date: Thu Mar 25 15:26:40 2010
New Revision: 72810
Modified:
pypy/branch/cpython-extension/pypy/module/cpyext/api.py
pypy/branch/cpython-extension/pypy/module/cpyext/stringobject.py
pypy/branch/cpython-extension/pypy/module/cpyext/test/test_stringobject.py
Log:
Rename PyStringObjectPtr to PyStringObject, for consistency with PyObject
Modified: pypy/branch/cpython-extension/pypy/module/cpyext/api.py
==============================================================================
--- pypy/branch/cpython-extension/pypy/module/cpyext/api.py (original)
+++ pypy/branch/cpython-extension/pypy/module/cpyext/api.py Thu Mar 25 15:26:40 2010
@@ -183,11 +183,11 @@
PyVarObjectFields = PyObjectFields + (("obj_size", Py_ssize_t), )
cpython_struct('struct _object', PyObjectFields, PyObjectStruct)
-PyStringObject = lltype.ForwardReference()
-PyStringObjectPtr = lltype.Ptr(PyStringObject)
+PyStringObjectStruct = lltype.ForwardReference()
+PyStringObject = lltype.Ptr(PyStringObjectStruct)
PyStringObjectFields = PyVarObjectFields + \
(("buffer", rffi.CCHARP), ("size", Py_ssize_t))
-cpython_struct("PyStringObject", PyStringObjectFields, PyStringObject)
+cpython_struct("PyStringObject", PyStringObjectFields, PyStringObjectStruct)
def configure():
for name, TYPE in rffi_platform.configure(CConfig).iteritems():
@@ -238,7 +238,7 @@
T = get_padded_type(PyObject.TO, basicsize)
py_obj = lltype.malloc(T, None, flavor="raw")
elif isinstance(w_obj, W_StringObject):
- py_obj = lltype.malloc(PyStringObjectPtr.TO, None, flavor='raw')
+ py_obj = lltype.malloc(PyStringObject.TO, None, flavor='raw')
py_obj.c_size = len(space.str_w(w_obj))
py_obj.c_buffer = lltype.nullptr(rffi.CCHARP.TO)
pto = make_ref(space, space.w_str)
@@ -261,7 +261,7 @@
def force_string(space, ref):
state = space.fromcache(State)
- ref = rffi.cast(PyStringObjectPtr, ref)
+ ref = rffi.cast(PyStringObject, ref)
s = rffi.charpsize2str(ref.c_buffer, ref.c_size)
ref = rffi.cast(PyObject, ref)
w_str = space.wrap(s)
Modified: pypy/branch/cpython-extension/pypy/module/cpyext/stringobject.py
==============================================================================
--- pypy/branch/cpython-extension/pypy/module/cpyext/stringobject.py (original)
+++ pypy/branch/cpython-extension/pypy/module/cpyext/stringobject.py Thu Mar 25 15:26:40 2010
@@ -1,15 +1,15 @@
from pypy.rpython.lltypesystem import rffi, lltype
from pypy.module.cpyext.api import cpython_api, PyObject, PyVarObjectFields, \
- PyStringObjectPtr, Py_ssize_t, cpython_struct, make_ref, from_ref
+ PyStringObject, Py_ssize_t, cpython_struct, make_ref, from_ref
- at cpython_api([rffi.CCHARP, Py_ssize_t], PyStringObjectPtr, error=None)
+ at cpython_api([rffi.CCHARP, Py_ssize_t], PyStringObject, error=None)
def PyString_FromStringAndSize(space, char_p, length):
if char_p:
s = rffi.charpsize2str(char_p, length)
ptr = make_ref(space, space.wrap(s))
- return rffi.cast(PyStringObjectPtr, ptr)
+ return rffi.cast(PyStringObject, ptr)
else:
- py_str = lltype.malloc(PyStringObjectPtr.TO, None, flavor='raw')
+ py_str = lltype.malloc(PyStringObject.TO, None, flavor='raw')
py_str.c_obj_refcnt = 1
buflen = length + 1
@@ -27,7 +27,7 @@
@cpython_api([PyObject], rffi.CCHARP, error=0)
def PyString_AsString(space, ref):
- ref = rffi.cast(PyStringObjectPtr, ref)
+ ref = rffi.cast(PyStringObject, ref)
if not ref.c_buffer:
# copy string buffer
w_str = from_ref(space, ref)
@@ -38,7 +38,7 @@
@cpython_api([PyObject], Py_ssize_t, error=-1)
def PyString_Size(space, ref):
if from_ref(space, ref.c_obj_type) is space.w_str:
- ref = rffi.cast(PyStringObjectPtr, ref)
+ ref = rffi.cast(PyStringObject, ref)
return ref.c_size
else:
w_obj = from_ref(space, ref)
Modified: pypy/branch/cpython-extension/pypy/module/cpyext/test/test_stringobject.py
==============================================================================
--- pypy/branch/cpython-extension/pypy/module/cpyext/test/test_stringobject.py (original)
+++ pypy/branch/cpython-extension/pypy/module/cpyext/test/test_stringobject.py Thu Mar 25 15:26:40 2010
@@ -7,7 +7,6 @@
#class TestObject(BaseApiTest):
# def test_Size(self, space, api):
-# skip('in progress')
# s = space.wrap("test")
# assert api.PyString_Size(s) == 4
More information about the Pypy-commit
mailing list