return self._value < float(other)
- def __le__(self, other):
- if not isinstance(other, numbers.Number):
- raise TypeError('unorderable types: {}() <= {}()'.format(self.__class__.__name__,
- other.__class__.__name__))
-
- return self._value <= float(other)
-
def _spec_eq(self, other):
if not isinstance(other, numbers.Number):
return NotImplemented
self.value = self | other
return self
+ def __lt__(self, other):
+ if not isinstance(other, numbers.Integral):
+ return super().__lt__(other);
+
+ return self._value < int(other)
+
+ def _spec_eq(self, other):
+ if not isinstance(other, numbers.Integral):
+ return super()._spec_eq(other);
+
+ return self._value == int(other)
+
class _IntegerField(_IntegralField, _Field):
pass
return self._value == other
- def __le__(self, other):
- return self._value <= self._value_to_str(other)
-
def __lt__(self, other):
return self._value < self._value_to_str(other)