Add @total_ordering to classes with __lt__
diff --git a/Lib/fontTools/misc/transform.py b/Lib/fontTools/misc/transform.py
index 4fdb964..a6bbbcb 100644
--- a/Lib/fontTools/misc/transform.py
+++ b/Lib/fontTools/misc/transform.py
@@ -268,30 +268,6 @@
"""
return self.__affine[index]
- def __lt__(self, other):
- """Transform instances are comparable:
- >>> t1 = Identity.scale(2, 3).translate(4, 6)
- >>> t2 = Identity.translate(8, 18).scale(2, 3)
- >>> t1 == t2
- 1
- >>>
-
- But beware of floating point rounding errors:
- >>> t1 = Identity.scale(0.2, 0.3).translate(0.4, 0.6)
- >>> t2 = Identity.translate(0.08, 0.18).scale(0.2, 0.3)
- >>> t1
- <Transform [0.2 0.0 0.0 0.3 0.08 0.18]>
- >>> t2
- <Transform [0.2 0.0 0.0 0.3 0.08 0.18]>
- >>> t1 == t2
- 0
- >>>
- """
- xx1, xy1, yx1, yy1, dx1, dy1 = self.__affine
- xx2, xy2, yx2, yy2, dx2, dy2 = other
- return (xx1, xy1, yx1, yy1, dx1, dy1) < \
- (xx2, xy2, yx2, yy2, dx2, dy2)
-
def __ne__(self, other):
return not self.__eq__(other)
def __eq__(self, other):
diff --git a/Lib/fontTools/ttLib/tables/_c_m_a_p.py b/Lib/fontTools/ttLib/tables/_c_m_a_p.py
index 61863e7..11744dc 100644
--- a/Lib/fontTools/ttLib/tables/_c_m_a_p.py
+++ b/Lib/fontTools/ttLib/tables/_c_m_a_p.py
@@ -2,6 +2,7 @@
from fontTools.misc.py23 import *
from fontTools.misc.textTools import safeEval, readHex
from . import DefaultTable
+from functools import total_ordering
import sys
import struct
import array
@@ -97,6 +98,7 @@
self.tables.append(table)
+@total_ordering
class CmapSubtable(object):
def __init__(self, format):
diff --git a/Lib/fontTools/ttLib/tables/_n_a_m_e.py b/Lib/fontTools/ttLib/tables/_n_a_m_e.py
index b6cc19b..3663126 100644
--- a/Lib/fontTools/ttLib/tables/_n_a_m_e.py
+++ b/Lib/fontTools/ttLib/tables/_n_a_m_e.py
@@ -3,6 +3,7 @@
from fontTools.misc import sstruct
from fontTools.misc.textTools import safeEval
from . import DefaultTable
+from functools import total_ordering
import struct
nameRecordFormat = """
@@ -86,8 +87,9 @@
if langID is None or namerecord.langID == langID:
return namerecord
return None # not found
-
+
+@total_ordering
class NameRecord(object):
def toXML(self, writer, ttFont):