本文整理汇总了Python中pypy.module.cpyext.pyobject.make_typedescr函数的典型用法代码示例。如果您正苦于以下问题:Python make_typedescr函数的具体用法?Python make_typedescr怎么用?Python make_typedescr使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了make_typedescr函数的14个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Python代码示例。
示例1: init_stringobject
def init_stringobject(space):
"Type description of PyStringObject"
make_typedescr(space.w_str.instancetypedef,
basestruct=PyStringObject.TO,
attach=string_attach,
dealloc=string_dealloc,
realize=string_realize)
开发者ID:Darriall,项目名称:pypy,代码行数:7,代码来源:stringobject.py
示例2: init_stringobject
def init_stringobject(space):
"Type description of PyTupleObject"
make_typedescr(space.w_tuple.layout.typedef,
basestruct=PyTupleObject.TO,
attach=tuple_attach,
dealloc=tuple_dealloc,
realize=tuple_realize)
开发者ID:mozillazg,项目名称:pypy,代码行数:7,代码来源:tupleobject.py
示例3: init_bytesobject
def init_bytesobject(space):
"Type description of PyBytesObject"
make_typedescr(space.w_str.layout.typedef,
basestruct=PyBytesObject.TO,
attach=bytes_attach,
dealloc=bytes_dealloc,
realize=bytes_realize)
开发者ID:mozillazg,项目名称:pypy,代码行数:7,代码来源:bytesobject.py
示例4: init_bufferobject
def init_bufferobject(space):
"Type description of PyBufferObject"
make_typedescr(space.gettypefor(Buffer).instancetypedef,
basestruct=PyBufferObject.TO,
attach=buffer_attach,
dealloc=buffer_dealloc,
realize=buffer_realize)
开发者ID:Debug-Orz,项目名称:Sypy,代码行数:7,代码来源:bufferobject.py
示例5: init_bufferobject
def init_bufferobject(space):
"Type description of PyBufferObject"
make_typedescr(space.w_buffer.layout.typedef,
basestruct=PyBufferObject.TO,
attach=buffer_attach,
dealloc=buffer_dealloc,
realize=buffer_realize)
开发者ID:abhinavthomas,项目名称:pypy,代码行数:7,代码来源:bufferobject.py
示例6: init_typeobject
def init_typeobject(space):
make_typedescr(space.w_type.layout.typedef,
basestruct=PyTypeObject,
alloc=type_alloc,
attach=type_attach,
realize=type_realize,
dealloc=type_dealloc)
开发者ID:mozillazg,项目名称:pypy,代码行数:7,代码来源:typeobject.py
示例7: init_typeobject
def init_typeobject(space):
# Probably a hack
space.model.typeorder[W_PyCTypeObject] = [(W_PyCTypeObject, None),
(W_TypeObject, None),
(W_Root, None)]
make_typedescr(space.w_type.instancetypedef,
basestruct=PyTypeObject,
alloc=type_alloc,
attach=type_attach,
realize=type_realize,
dealloc=type_dealloc)
# some types are difficult to create because of cycles.
# - object.ob_type = type
# - type.ob_type = type
# - tuple.ob_type = type
# - type.tp_base = object
# - tuple.tp_base = object
# - type.tp_bases is a tuple
# - object.tp_bases is a tuple
# - tuple.tp_bases is a tuple
# insert null placeholders to please create_ref()
track_reference(space, lltype.nullptr(PyObject.TO), space.w_type)
track_reference(space, lltype.nullptr(PyObject.TO), space.w_object)
track_reference(space, lltype.nullptr(PyObject.TO), space.w_tuple)
track_reference(space, lltype.nullptr(PyObject.TO), space.w_str)
# create the objects
py_type = create_ref(space, space.w_type)
py_object = create_ref(space, space.w_object)
py_tuple = create_ref(space, space.w_tuple)
py_str = create_ref(space, space.w_str)
# form cycles
pto_type = rffi.cast(PyTypeObjectPtr, py_type)
py_type.c_ob_type = pto_type
py_object.c_ob_type = pto_type
py_tuple.c_ob_type = pto_type
pto_object = rffi.cast(PyTypeObjectPtr, py_object)
pto_type.c_tp_base = pto_object
pto_tuple = rffi.cast(PyTypeObjectPtr, py_tuple)
pto_tuple.c_tp_base = pto_object
pto_type.c_tp_bases.c_ob_type = pto_tuple
pto_object.c_tp_bases.c_ob_type = pto_tuple
pto_tuple.c_tp_bases.c_ob_type = pto_tuple
for typ in (py_type, py_object, py_tuple, py_str):
heaptype = rffi.cast(PyHeapTypeObject, typ)
heaptype.c_ht_name.c_ob_type = pto_type
# Restore the mapping
track_reference(space, py_type, space.w_type, replace=True)
track_reference(space, py_object, space.w_object, replace=True)
track_reference(space, py_tuple, space.w_tuple, replace=True)
track_reference(space, py_str, space.w_str, replace=True)
开发者ID:Debug-Orz,项目名称:Sypy,代码行数:59,代码来源:typeobject.py
示例8: init_memberdescrobject
def init_memberdescrobject(space):
make_typedescr(W_MemberDescr.typedef,
basestruct=PyMemberDescrObject.TO,
attach=memberdescr_attach,
realize=memberdescr_realize,
)
make_typedescr(W_GetSetPropertyEx.typedef,
basestruct=PyGetSetDescrObject.TO,
attach=getsetdescr_attach,
)
make_typedescr(W_PyCClassMethodObject.typedef,
basestruct=PyMethodDescrObject.TO,
attach=methoddescr_attach,
realize=classmethoddescr_realize,
)
make_typedescr(W_PyCMethodObject.typedef,
basestruct=PyMethodDescrObject.TO,
attach=methoddescr_attach,
realize=methoddescr_realize,
)
开发者ID:mozillazg,项目名称:pypy,代码行数:20,代码来源:typeobject.py
示例9: init_sliceobject
def init_sliceobject(space):
"Type description of PySliceObject"
make_typedescr(W_SliceObject.typedef,
basestruct=PySliceObject.TO,
attach=slice_attach,
dealloc=slice_dealloc)
开发者ID:Qointum,项目名称:pypy,代码行数:6,代码来源:sliceobject.py
示例10: init_intobject
def init_intobject(space):
"Type description of PyIntObject"
make_typedescr(space.w_int.layout.typedef, basestruct=PyIntObject.TO, attach=int_attach, realize=int_realize)
开发者ID:cimarieta,项目名称:usp,代码行数:3,代码来源:intobject.py
示例11: init_methodobject
def init_methodobject(space):
make_typedescr(W_PyCFunctionObject.typedef,
basestruct=PyCFunctionObject.TO,
attach=cfunction_attach,
dealloc=cfunction_dealloc)
开发者ID:charred,项目名称:pypy,代码行数:5,代码来源:methodobject.py
示例12: init_frameobject
def init_frameobject(space):
make_typedescr(PyFrame.typedef,
basestruct=PyFrameObject.TO,
attach=frame_attach,
dealloc=frame_dealloc,
realize=frame_realize)
开发者ID:gorakhargosh,项目名称:pypy,代码行数:6,代码来源:frameobject.py
示例13: init_traceback
def init_traceback(space):
make_typedescr(PyTraceback.typedef,
basestruct=PyTracebackObject.TO,
attach=traceback_attach,
dealloc=traceback_dealloc)
开发者ID:abhinavthomas,项目名称:pypy,代码行数:5,代码来源:pytraceback.py
示例14: init_intobject
def init_intobject(space):
"Type description of PyIntObject"
make_typedescr(space.w_int.instancetypedef,
basestruct=PyIntObject.TO,
realize=int_realize)
开发者ID:charred,项目名称:pypy,代码行数:5,代码来源:intobject.py
注:本文中的pypy.module.cpyext.pyobject.make_typedescr函数示例由纯净天空整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论