Модуль общих компонентов common
================================

.. py:module:: axioma.common

Данный модуль содержит общие компоненты

Исключения
-----------

.. graphviz::

	digraph exceptions_hierarchy {
		labelloc="t";
		label="Иерархия наследования: Исключения";
		rankdir=LR;
		node [shape="box"];
		edge [dir="back"];
		"Exception" -> "BasicException" -> "OutOfRangeException";
		"BasicException" -> "RuntimeException";
	}

.. currentmodule:: axioma.common

.. exception:: BasicException

	Базовый тип исключений

	Унаследован от: :class:`Exception`

	От него наследуются:

	* :class:`~axioma.common.OutOfRangeException`
	* :class:`~axioma.common.RuntimeException`

.. exception:: OutOfRangeException

	Выход за границы

	Унаследован от: :class:`~axioma.common.BasicException`

	..	От него наследуются:

.. code-block:: python
	:caption: Пример использования: Обработка искючения :exc:`~axioma.common.OutOfRangeException` метода :meth:`~axioma.core.dp.Feature.getAttribute`

	import axioma.common

	# ...
	# код получения записи feature
	# ...

	try:
		attr = feature.getAttribute(-1)
	except axioma.common.OutOfRangeException as ex:
		# ...
		# обработка исключения
		# ...
	except Exception as ex:
		print("Непредвиденная ошибка")
		# бросаем исключение дальше
		raise ex

.. exception:: RuntimeException

	Ошибка в процессе выполнения

	Унаследован от: :class:`BasicException`

	..	От него наследуются:
