import sys # collections.abc requires Python 3.3+ if sys.version_info[0:2] < (3, 3): exit(0) from python_abstractbase import * import collections.abc # This is expected to fail with -builtin option # Builtin types can't inherit from pure-python abstract bases if is_python_builtin(): exit(0) # Python abc is only turned on when -py3 option is passed to SWIG if not is_swig_py3: exit(0) def check_issubclass(derived, base): if not issubclass(derived, base): raise RuntimeError("{} is not a subclass of {}".format(derived, base)) check_issubclass(Mapii, collections.abc.MutableMapping) check_issubclass(Multimapii, collections.abc.MutableMapping) check_issubclass(IntSet, collections.abc.MutableSet) check_issubclass(IntMultiset, collections.abc.MutableSet) check_issubclass(IntVector, collections.abc.MutableSequence) check_issubclass(IntList, collections.abc.MutableSequence) mapii = Mapii() multimapii = Multimapii() intset = IntSet() intmultiset = IntMultiset() intvector = IntVector() intlist = IntList()