lib: strictly type function return status enumerations
[babeltrace.git] / src / bindings / python / bt2 / bt2 / clock_snapshot.py
index 4bf37d622b232917fedd69420c7d65ccfffdfa1f..46abdc7856b4c362a39d850e7cdbdfbacaa1449f 100644 (file)
@@ -26,27 +26,23 @@ import bt2
 import functools
 
 
-class _BaseClockSnapshot(object._UniqueObject):
+@functools.total_ordering
+class _ClockSnapshot(object._UniqueObject):
     @property
     def clock_class(self):
         cc_ptr = native_bt.clock_snapshot_borrow_clock_class_const(self._ptr)
         assert cc_ptr is not None
         return bt2.clock_class._ClockClass._create_from_ptr_and_get_ref(cc_ptr)
 
-
-@functools.total_ordering
-class _ClockSnapshot(_BaseClockSnapshot):
     @property
     def value(self):
         return native_bt.clock_snapshot_get_value(self._ptr)
 
     @property
     def ns_from_origin(self):
-        ret, ns = native_bt.clock_snapshot_get_ns_from_origin(self._ptr)
-
-        if ret == native_bt.CLOCK_SNAPSHOT_STATUS_OVERFLOW:
-            raise OverflowError("cannot get clock snapshot's nanoseconds from origin")
-
+        status, ns = native_bt.clock_snapshot_get_ns_from_origin(self._ptr)
+        utils._handle_func_status(status,
+                                  "cannot get clock snapshot's nanoseconds from origin")
         return ns
 
     def __eq__(self, other):
@@ -62,9 +58,9 @@ class _ClockSnapshot(_BaseClockSnapshot):
         return self.value < int(other)
 
 
-class _UnknownClockSnapshot(_BaseClockSnapshot):
+class _UnknownClockSnapshot:
     pass
 
 
-class _InfiniteClockSnapshot(_BaseClockSnapshot):
+class _InfiniteClockSnapshot:
     pass
This page took 0.023793 seconds and 4 git commands to generate.