-# The MIT License (MIT)
+# SPDX-License-Identifier: MIT
#
# Copyright (c) 2017 Philippe Proulx <pproulx@efficios.com>
-#
-# Permission is hereby granted, free of charge, to any person obtaining a copy
-# of this software and associated documentation files (the "Software"), to deal
-# in the Software without restriction, including without limitation the rights
-# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-# copies of the Software, and to permit persons to whom the Software is
-# furnished to do so, subject to the following conditions:
-#
-# The above copyright notice and this permission notice shall be included in
-# all copies or substantial portions of the Software.
-#
-# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-# THE SOFTWARE.
-
-from bt2 import native_bt, object, utils
+
+from bt2 import native_bt
+from bt2 import object as bt2_object
+from bt2 import utils as bt2_utils
+from bt2 import error as bt2_error
import collections.abc
-import bt2
class _IntegerRangeConst:
class _SignedIntegerRangeConst(_IntegerRangeConst):
- _is_type = staticmethod(utils._is_int64)
- _check_type = staticmethod(utils._check_int64)
+ _is_type = staticmethod(bt2_utils._is_int64)
+ _check_type = staticmethod(bt2_utils._check_int64)
class SignedIntegerRange(_SignedIntegerRangeConst, _IntegerRange):
class _UnsignedIntegerRangeConst(_IntegerRangeConst):
- _is_type = staticmethod(utils._is_uint64)
- _check_type = staticmethod(utils._check_uint64)
+ _is_type = staticmethod(bt2_utils._is_uint64)
+ _check_type = staticmethod(bt2_utils._check_uint64)
class UnsignedIntegerRange(_UnsignedIntegerRangeConst, _IntegerRange):
pass
-class _IntegerRangeSetConst(object._SharedObject, collections.abc.Set):
+class _IntegerRangeSetConst(bt2_object._SharedObject, collections.abc.Set):
def __len__(self):
range_set_ptr = self._as_range_set_ptr(self._ptr)
count = native_bt.integer_range_set_get_range_count(range_set_ptr)
yield self._range_pycls(lower, upper)
def __eq__(self, other):
-
if not isinstance(other, _IntegerRangeSetConst):
return False
ptr = self._create_range_set()
if ptr is None:
- raise bt2._MemoryError('cannot create range set object')
+ raise bt2_error._MemoryError("cannot create range set object")
super().__init__(ptr)
rg = self._range_pycls(rg[0], rg[1])
status = self._add_range(self._ptr, rg.lower, rg.upper)
- utils._handle_func_status(status, 'cannot add range to range set object')
+ bt2_utils._handle_func_status(status, "cannot add range to range set object")
def discard(self, rg):
raise NotImplementedError
class _SignedIntegerRangeSetConst(_IntegerRangeSetConst):
- _get_ref = staticmethod(native_bt.integer_range_set_signed_get_ref)
- _put_ref = staticmethod(native_bt.integer_range_set_signed_put_ref)
+ @staticmethod
+ def _get_ref(ptr):
+ native_bt.integer_range_set_signed_get_ref(ptr)
+
+ @staticmethod
+ def _put_ref(ptr):
+ native_bt.integer_range_set_signed_put_ref(ptr)
+
_as_range_set_ptr = staticmethod(
native_bt.integer_range_set_signed_as_range_set_const
)
class _UnsignedIntegerRangeSetConst(_IntegerRangeSetConst):
- _get_ref = staticmethod(native_bt.integer_range_set_unsigned_get_ref)
- _put_ref = staticmethod(native_bt.integer_range_set_unsigned_put_ref)
+ @staticmethod
+ def _get_ref(ptr):
+ native_bt.integer_range_set_unsigned_get_ref(ptr)
+
+ @staticmethod
+ def _put_ref(ptr):
+ native_bt.integer_range_set_unsigned_put_ref(ptr)
+
_as_range_set_ptr = staticmethod(
native_bt.integer_range_set_unsigned_as_range_set_const
)