chiark / gitweb /
catacomb/__init__.py: Add `_clsname' for printing class names.
authorMark Wooding <mdw@distorted.org.uk>
Mon, 1 May 2017 00:38:30 +0000 (01:38 +0100)
committerMark Wooding <mdw@distorted.org.uk>
Fri, 5 May 2017 00:01:57 +0000 (01:01 +0100)
Replace both the ugly `type(me).__name__' rune, and literal class names.

catacomb/__init__.py

index 64f07c32a511a7ae05409e6c8fee13c6419ba778..d0411beca600e7b9427ab9c69bbe7b4cf0568b02 100644 (file)
@@ -83,13 +83,14 @@ def _checkend(r):
   return x
 
 ## Some pretty-printing utilities.
+def _clsname(me): return type(me).__name__
 def _pp_str(me, pp, cyclep): pp.text(cyclep and '...' or str(me))
 def _pp_bgroup(pp, text):
   ind = len(text)
   pp.begin_group(ind, text)
   return ind
 def _pp_bgroup_tyname(pp, obj, open = '('):
-  return _pp_bgroup(pp, type(obj).__name__ + open)
+  return _pp_bgroup(pp, _clsname(obj) + open)
 def _pp_kv(pp, k, v):
   ind = _pp_bgroup(pp, k + ' = ')
   pp.pretty(v)
@@ -179,7 +180,7 @@ class BaseRat (object):
   @property
   def denom(me): return me._d
   def __str__(me): return '%s/%s' % (me._n, me._d)
-  def __repr__(me): return '%s(%s, %s)' % (type(me).__name__, me._n, me._d)
+  def __repr__(me): return '%s(%s, %s)' % (_clsname(me), me._n, me._d)
   _repr_pretty_ = _pp_str
 
   def __add__(me, you):
@@ -256,7 +257,7 @@ class _tmp:
 _augment(Field, _tmp)
 
 class _tmp:
-  def __repr__(me): return '%s(%sL)' % (type(me).__name__, me.p)
+  def __repr__(me): return '%s(%sL)' % (_clsname(me), me.p)
   def __hash__(me): return 0x114401de ^ hash(me.p)
   def _repr_pretty_(me, pp, cyclep):
     ind = _pp_bgroup_tyname(pp, me)
@@ -267,7 +268,7 @@ class _tmp:
 _augment(PrimeField, _tmp)
 
 class _tmp:
-  def __repr__(me): return '%s(%#xL)' % (type(me).__name__, me.p)
+  def __repr__(me): return '%s(%#xL)' % (_clsname(me), me.p)
   def ec(me, a, b): return ECBinProjCurve(me, a, b)
   def _repr_pretty_(me, pp, cyclep):
     ind = _pp_bgroup_tyname(pp, me)
@@ -299,7 +300,7 @@ _augment(FE, _tmp)
 
 class _tmp:
   def __repr__(me):
-    return '%s(%r, %s, %s)' % (type(me).__name__, me.field, me.a, me.b)
+    return '%s(%r, %s, %s)' % (_clsname(me), me.field, me.a, me.b)
   def _repr_pretty_(me, pp, cyclep):
     ind = _pp_bgroup_tyname(pp, me)
     if cyclep:
@@ -337,8 +338,8 @@ _augment(ECBinCurve, _tmp)
 
 class _tmp:
   def __repr__(me):
-    if not me: return 'ECPt()'
-    return 'ECPt(%s, %s)' % (me.ix, me.iy)
+    if not me: return '%s()' % _clsname(me)
+    return '%s(%s, %s)' % (_clsname(me), me.ix, me.iy)
   def __str__(me):
     if not me: return 'inf'
     return '(%s, %s)' % (me.ix, me.iy)
@@ -356,8 +357,8 @@ _augment(ECPt, _tmp)
 
 class _tmp:
   def __repr__(me):
-    return 'ECInfo(curve = %r, G = %r, r = %s, h = %s)' % \
-           (me.curve, me.G, me.r, me.h)
+    return '%s(curve = %r, G = %r, r = %s, h = %s)' % \
+           (_clsname(me), me.curve, me.G, me.r, me.h)
   def _repr_pretty_(me, pp, cyclep):
     ind = _pp_bgroup_tyname(pp, me)
     if cyclep:
@@ -400,15 +401,15 @@ _augment(ECPtCurve, _tmp)
 ### Key sizes.
 
 class _tmp:
-  def __repr__(me): return 'KeySZAny(%d)' % me.default
+  def __repr__(me): return '%s(%d)' % (_clsname(me), me.default)
   def check(me, sz): return True
   def best(me, sz): return sz
 _augment(KeySZAny, _tmp)
 
 class _tmp:
   def __repr__(me):
-    return 'KeySZRange(%d, %d, %d, %d)' % \
-           (me.default, me.min, me.max, me.mod)
+    return '%s(%d, %d, %d, %d)' % \
+           (_clsname(me), me.default, me.min, me.max, me.mod)
   def _repr_pretty_(me, pp, cyclep):
     ind = _pp_bgroup_tyname(pp, me)
     if cyclep:
@@ -427,7 +428,7 @@ class _tmp:
 _augment(KeySZRange, _tmp)
 
 class _tmp:
-  def __repr__(me): return 'KeySZSet(%d, %s)' % (me.default, me.set)
+  def __repr__(me): return '%s(%d, %s)' % (_clsname(me), me.default, me.set)
   def _repr_pretty_(me, pp, cyclep):
     ind = _pp_bgroup_tyname(pp, me)
     if cyclep:
@@ -451,17 +452,17 @@ _augment(KeySZSet, _tmp)
 ### Key data objects.
 
 class _tmp:
-  def __repr__(me): return 'KeyFile(%r)' % me.name
+  def __repr__(me): return '%s(%r)' % (_clsname(me), me.name)
 _augment(KeyFile, _tmp)
 
 class _tmp:
-  def __repr__(me): return 'Key(%r)' % me.fulltag
+  def __repr__(me): return '%s(%r)' % (_clsname(me), me.fulltag)
 _augment(Key, _tmp)
 
 class _tmp:
   def __repr__(me):
-    return 'KeyAttributes({%s})' % \
-        ', '.join(['%r: %r' % kv for kv in me.iteritems()])
+    return '%s({%s})' % (_clsname(me),
+                         ', '.join(['%r: %r' % kv for kv in me.iteritems()]))
   def _repr_pretty_(me, pp, cyclep):
     ind = _pp_bgroup_tyname(pp, me)
     if cyclep: pp.text('...')
@@ -472,7 +473,7 @@ _augment(KeyAttributes, _tmp)
 class _tmp:
   def __repr__(me):
     return '%s(%s, %r)' % \
-        (type(me).__name__, repr(me._guts()), me.writeflags(me.flags))
+        (_clsname(me), repr(me._guts()), me.writeflags(me.flags))
   def _repr_pretty_(me, pp, cyclep):
     ind = _pp_bgroup_tyname(pp, me)
     if cyclep:
@@ -505,8 +506,8 @@ _augment(KeyDataECPt, _tmp)
 
 class _tmp:
   def __repr__(me):
-    return 'KeyDataStructured({%s})' % \
-        ', '.join(['%r: %r' % kv for kv in me.iteritems()])
+    return '%s({%s})' % (_clsname(me),
+                         ', '.join(['%r: %r' % kv for kv in me.iteritems()]))
   def _repr_pretty_(me, pp, cyclep):
     ind = _pp_bgroup_tyname(pp, me, '({ ')
     if cyclep: pp.text('...')
@@ -519,8 +520,7 @@ _augment(KeyDataStructured, _tmp)
 
 class _tmp:
   def __repr__(me):
-    return '%s(p = %s, r = %s, g = %s)' % \
-           (type(me).__name__, me.p, me.r, me.g)
+    return '%s(p = %s, r = %s, g = %s)' % (_clsname(me), me.p, me.r, me.g)
   def _repr_pretty_(me, pp, cyclep):
     ind = _pp_bgroup_tyname(pp, me)
     if cyclep:
@@ -542,7 +542,7 @@ _augment(BinDHInfo, _tmp)
 
 class _tmp:
   def __repr__(me):
-    return '%s(%r)' % (type(me).__name__, me.info)
+    return '%s(%r)' % (_clsname(me), me.info)
   def _repr_pretty_(me, pp, cyclep):
     ind = _pp_bgroup_tyname(pp, me)
     if cyclep: pp.text('...')