def __init__(self, **kwds): super(Py_ssize_t_Type, self).__init__(**kwds) if have_ctypes: if hasattr(ctypes, 'c_ssize_t'): self.itemsize = ctypes.sizeof(ctypes.c_ssize_t) else: self.itemsize = size_t.itemsize else: self.itemsize = _plat_bits // 8
def __init__(self, **kwds): super(NPyIntp, self).__init__(**kwds) ctypes_array = np.empty(0).ctypes.strides self.itemsize = ctypes.sizeof(ctypes_array._type_)
def getsize(ctypes_name, default): try: return ctypes.sizeof(getattr(ctypes, ctypes_name)) except ImportError: return default
int_ = IntType(name="int", rank=4, typecode='i') long_ = IntType(name="long", rank=5, typecode='l') longlong = IntType(name="PY_LONG_LONG", rank=8, typecode='q') uchar = CharType(name="unsigned char", signed=False, typecode='B') ushort = IntType(name="unsigned short", rank=2.5, typecode='H', signed=False) uint = IntType(name="unsigned int", rank=4.5, typecode='I', signed=False) ulong = IntType(name="unsigned long", rank=5.5, typecode='L', signed=False) ulonglong = IntType(name="unsigned PY_LONG_LONG", rank=8.5, typecode='Q', signed=False) float_ = FloatType(name="float", rank=20, itemsize=4) double = FloatType(name="double", rank=21, itemsize=8) longdouble = FloatType(name="long double", rank=22, itemsize=ctypes.sizeof(ctypes.c_longdouble)) bool_ = BoolType() object_ = ObjectType() int8 = IntType(name="int8", rank=1, itemsize=1) int16 = IntType(name="int16", rank=2, itemsize=2) int32 = IntType(name="int32", rank=4, itemsize=4) int64 = IntType(name="int64", rank=8, itemsize=8) uint8 = IntType(name="uint8", rank=1.5, signed=False, itemsize=1) uint16 = IntType(name="uint16", rank=2.5, signed=False, itemsize=2) uint32 = IntType(name="uint32", rank=4.5, signed=False, itemsize=4) uint64 = IntType(name="uint64", rank=8.5, signed=False, itemsize=8) float32 = FloatType(name="float32", rank=20, itemsize=4)