def make_CType(space): return space.gettypefor(W_CType) def make_NULL(space): ctvoidp = newtype._new_voidp_type(space) w_NULL = ctvoidp.cast(space.newint(0)) return w_NULL def make_error(space): return space.appexec([], """(): return type('error', (Exception,), {'__module__': 'ffi'})""") def make_buffer(space): return space.gettypefor(cbuffer.MiniBuffer) _extras = get_dict_rtld_constants() if sys.platform == 'win32': _extras['getwinerror'] = interp2app(W_FFIObject.descr_getwinerror) W_FFIObject.typedef = TypeDef( 'CompiledFFI', __new__ = interp2app(W_FFIObject___new__), __init__ = interp2app(W_FFIObject.descr_init), CData = ClassAttr(make_CData), CType = ClassAttr(make_CType), NULL = ClassAttr(make_NULL), error = ClassAttr(make_error), errno = GetSetProperty(W_FFIObject.get_errno, W_FFIObject.set_errno, doc=W_FFIObject.doc_errno,
def make_CData(space): return space.gettypefor(W_CData) def make_CType(space): return space.gettypefor(W_CType) def make_NULL(space): ctvoidp = newtype._new_voidp_type(space) w_NULL = ctvoidp.cast(space.wrap(0)) return w_NULL def make_error(space): return space.appexec([], """(): return type('error', (Exception,), {'__module__': 'ffi'})""") _extras = get_dict_rtld_constants() if sys.platform == 'win32': _extras['getwinerror'] = interp2app(W_FFIObject.descr_getwinerror) W_FFIObject.typedef = TypeDef( 'CompiledFFI', __new__ = interp2app(W_FFIObject___new__), __init__ = interp2app(W_FFIObject.descr_init), CData = ClassAttr(make_CData), CType = ClassAttr(make_CType), NULL = ClassAttr(make_NULL), error = ClassAttr(make_error), errno = GetSetProperty(W_FFIObject.get_errno, W_FFIObject.set_errno, doc=W_FFIObject.doc_errno,