Author: Wim Lavrijsen <[email protected]>
Branch: reflex-support
Changeset: r55719:4cbe269fda19
Date: 2012-06-19 09:49 -0700
http://bitbucket.org/pypy/pypy/changeset/4cbe269fda19/

Log:    code quality

diff --git a/pypy/module/cppyy/converter.py b/pypy/module/cppyy/converter.py
--- a/pypy/module/cppyy/converter.py
+++ b/pypy/module/cppyy/converter.py
@@ -541,88 +541,6 @@
         ba[capi.c_function_arg_typeoffset()] = 'r'
 
 
-class ShortArrayConverter(ArrayTypeConverterMixin, TypeConverter):
-    _immutable_ = True
-    typecode = 'h'
-    typesize = rffi.sizeof(rffi.SHORT)
-
-class UnsignedShortArrayConverter(ArrayTypeConverterMixin, TypeConverter):
-    _immutable_ = True
-    typecode = 'H'
-    typesize = rffi.sizeof(rffi.USHORT)
-
-class IntArrayConverter(ArrayTypeConverterMixin, TypeConverter):
-    _immutable_ = True
-    typecode = 'i'
-    typesize = rffi.sizeof(rffi.INT)
-
-class UnsignedIntArrayConverter(ArrayTypeConverterMixin, TypeConverter):
-    _immutable_ = True
-    typecode = 'I'
-    typesize = rffi.sizeof(rffi.UINT)
-
-class LongArrayConverter(ArrayTypeConverterMixin, TypeConverter):
-    _immutable_ = True
-    typecode = 'l'
-    typesize = rffi.sizeof(rffi.LONG)
-
-class UnsignedLongArrayConverter(ArrayTypeConverterMixin, TypeConverter):
-    _immutable_ = True
-    typecode = 'L'
-    typesize = rffi.sizeof(rffi.ULONG)
-
-class FloatArrayConverter(ArrayTypeConverterMixin, TypeConverter):
-    _immutable_ = True
-    typecode = 'f'
-    typesize = rffi.sizeof(rffi.FLOAT)
-
-class DoubleArrayConverter(ArrayTypeConverterMixin, TypeConverter):
-    _immutable_ = True
-    typecode = 'd'
-    typesize = rffi.sizeof(rffi.DOUBLE)
-
-
-class ShortPtrConverter(PtrTypeConverterMixin, TypeConverter):
-    _immutable_ = True
-    typecode = 'h'
-    typesize = rffi.sizeof(rffi.SHORT)
-
-class UnsignedShortPtrConverter(PtrTypeConverterMixin, TypeConverter):
-    _immutable_ = True
-    typecode = 'H'
-    typesize = rffi.sizeof(rffi.USHORT)
-
-class IntPtrConverter(PtrTypeConverterMixin, TypeConverter):
-    _immutable_ = True
-    typecode = 'i'
-    typesize = rffi.sizeof(rffi.INT)
-
-class UnsignedIntPtrConverter(PtrTypeConverterMixin, TypeConverter):
-    _immutable_ = True
-    typecode = 'I'
-    typesize = rffi.sizeof(rffi.UINT)
-
-class LongPtrConverter(PtrTypeConverterMixin, TypeConverter):
-    _immutable_ = True
-    typecode = 'l'
-    typesize = rffi.sizeof(rffi.LONG)
-
-class UnsignedLongPtrConverter(PtrTypeConverterMixin, TypeConverter):
-    _immutable_ = True
-    typecode = 'L'
-    typesize = rffi.sizeof(rffi.ULONG)
-
-class FloatPtrConverter(PtrTypeConverterMixin, TypeConverter):
-    _immutable_ = True
-    typecode = 'f'
-    typesize = rffi.sizeof(rffi.FLOAT)
-
-class DoublePtrConverter(PtrTypeConverterMixin, TypeConverter):
-    _immutable_ = True
-    typecode = 'd'
-    typesize = rffi.sizeof(rffi.DOUBLE)
-
-
 class InstancePtrConverter(TypeConverter):
     _immutable_ = True
 
@@ -676,7 +594,6 @@
     def to_memory(self, space, w_obj, w_value, offset):
         self._is_abstract(space)
 
-
 class InstancePtrPtrConverter(InstancePtrConverter):
     _immutable_ = True
     uses_local = True
@@ -887,28 +804,29 @@
 _converters["PyObject*"]                         = PyObjectConverter
 _converters["_object*"]                          = _converters["PyObject*"]
 
-# it should be possible to generate these:
-_a_converters["short int*"]               = ShortPtrConverter
-_a_converters["short*"]                   = _a_converters["short int*"]
-_a_converters["short int[]"]              = ShortArrayConverter
-_a_converters["short[]"]                  = _a_converters["short int[]"]
-_a_converters["unsigned short int*"]      = UnsignedShortPtrConverter
-_a_converters["unsigned short*"]          = _a_converters["unsigned short 
int*"]
-_a_converters["unsigned short int[]"]     = UnsignedShortArrayConverter
-_a_converters["unsigned short[]"]         = _a_converters["unsigned short 
int[]"]
-_a_converters["int*"]                     = IntPtrConverter
-_a_converters["int[]"]                    = IntArrayConverter
-_a_converters["unsigned int*"]            = UnsignedIntPtrConverter
-_a_converters["unsigned int[]"]           = UnsignedIntArrayConverter
-_a_converters["long int*"]                = LongPtrConverter
-_a_converters["long*"]                    = _a_converters["long int*"]
-_a_converters["long int[]"]               = LongArrayConverter
-_a_converters["long[]"]                   = _a_converters["long int[]"]
-_a_converters["unsigned long int*"]       = UnsignedLongPtrConverter
-_a_converters["unsigned long*"]           = _a_converters["unsigned long int*"]
-_a_converters["unsigned long int[]"]      = UnsignedLongArrayConverter
-_a_converters["unsigned long[]"]          = _a_converters["unsigned long 
int[]"]
-_a_converters["float*"]                   = FloatPtrConverter
-_a_converters["float[]"]                  = FloatArrayConverter
-_a_converters["double*"]                  = DoublePtrConverter
-_a_converters["double[]"]                 = DoubleArrayConverter
+def _build_array_converters():
+    "NOT_RPYTHON"
+    array_info = (
+        ('h', rffi.sizeof(rffi.SHORT),  ("short int", "short")),
+        ('H', rffi.sizeof(rffi.USHORT), ("unsigned short int", "unsigned 
short")),
+        ('i', rffi.sizeof(rffi.INT),    ("int",)),
+        ('I', rffi.sizeof(rffi.UINT),   ("unsigned int", "unsigned")),
+        ('l', rffi.sizeof(rffi.LONG),   ("long int", "long")),
+        ('L', rffi.sizeof(rffi.ULONG),  ("unsigned long int", "unsigned 
long")),
+        ('f', rffi.sizeof(rffi.FLOAT),  ("float",)),
+        ('d', rffi.sizeof(rffi.DOUBLE), ("double",)),
+    )
+
+    for info in array_info:
+        class ArrayConverter(ArrayTypeConverterMixin, TypeConverter):
+            _immutable_ = True
+            typecode = info[0]
+            typesize = info[1]
+        class PtrConverter(PtrTypeConverterMixin, TypeConverter):
+            _immutable_ = True
+            typecode = info[0]
+            typesize = info[1]
+        for name in info[2]:
+            _a_converters[name+'[]'] = ArrayConverter
+            _a_converters[name+'*']  = PtrConverter
+_build_array_converters()
_______________________________________________
pypy-commit mailing list
[email protected]
http://mail.python.org/mailman/listinfo/pypy-commit

Reply via email to