system/exceptions
ИсточникИзменитьТипы исключений и эффектов, используемые в коде Nim.
Типы
AccessViolationDefect = object of Defect
- Выбрасывается при ошибках доступа к памяти. Источник Изменить
AccessViolationError {....deprecated: "See corresponding Defect".} = AccessViolationDefect- Источник Изменить
ArithmeticDefect = object of Defect
- Выбрасывается, если произошла ошибка арифметики. Источник Изменить
AssertionDefect = object of Defect
-
Выбрасывается, когда утверждение оказывается ложным.
Обычно результат использования шаблона assert().
Источник Изменить DeadThreadDefect = object of Defect
- Выбрасывается, если попытка отправить сообщение мёртвой нити. Источник Изменить
DivByZeroDefect = object of ArithmeticDefect
- Выбрасывается при ошибках целочисленного деления на ноль во время выполнения. Источник Изменить
EOFError = object of IOError
- Выбрасывается, если произошла ошибка "конец файла" ввода-вывода. Источник Изменить
FieldDefect = object of Defect
- Выбрасывается, если поле записи недоступно, потому что значение его дискриминанта не подходит. Источник Изменить
FloatDivByZeroDefect = object of FloatingPointDefect
-
Выбрасывается при делении на ноль.
Делитель равен нулю, а делимое - конечное ненулевое число.
Источник Изменить FloatDivByZeroError {....deprecated: "See corresponding Defect".} = FloatDivByZeroDefect- Источник Изменить
FloatInexactDefect = object of FloatingPointDefect
-
Выбрасывается для неточных результатов.
Операция произвела результат, который нельзя представить с бесконечной точностью — например:
2.0 / 3.0, log(1.1)Примечание: Nim в настоящее время не обнаруживает это!
Источник Изменить FloatInexactError {....deprecated: "See corresponding Defect".} = FloatInexactDefect- Источник Изменить
FloatingPointDefect = object of Defect
- Базовый класс для исключений с плавающей запятой. Источник Изменить
FloatingPointError {....deprecated: "See corresponding Defect".} = FloatingPointDefect- Источник Изменить
FloatInvalidOpDefect = object of FloatingPointDefect
-
Выбрасывается при недопустимых операциях согласно IEEE.
Выбрасывается при
Источник Изменить0.0/0.0, например. FloatInvalidOpError {....deprecated: "See corresponding Defect".} = FloatInvalidOpDefect- Источник Изменить
FloatOverflowDefect = object of FloatingPointDefect
-
Выбрасывается при переполнении.
Операция произвела результат, превышающий диапазон показателя степени.
Источник Изменить FloatOverflowError {....deprecated: "See corresponding Defect".} = FloatOverflowDefect- Источник Изменить
FloatUnderflowDefect = object of FloatingPointDefect
-
Выбрасывается при подполеннии.
Операция произвела результат, слишком маленький для представления как нормального числа.
Источник Изменить FloatUnderflowError {....deprecated: "See corresponding Defect".} = FloatUnderflowDefect- Источник Изменить
KeyError = object of ValueError
-
Вызывается, если ключ не найден в таблице.
В основном используется модулем таблиц, но также может быть вызван другими модулями коллекций, такими как множества или strtabs.
Исходный код Редактировать LibraryError = object of OSError
- Вызывается, если динамическую библиотеку не удалось загрузить. Исходный код Редактировать
NilAccessDefect = object of Defect
-
Вызывается при обращении к
nilуказателям.Это происходит только в том случае, если был импортирован модуль segfaults!
Исходный код Редактировать NilAccessError {....deprecated: "See corresponding Defect".} = NilAccessDefect- Исходный код Редактировать
ObjectAssignmentDefect = object of Defect
- Вызывается, если объект присваивается объекту родителя. Исходный код Редактировать
ObjectAssignmentError {....deprecated: "See corresponding Defect".} = ObjectAssignmentDefect- Исходный код Редактировать
ObjectConversionDefect = object of Defect
- Вызывается, если объект преобразуется в несовместимый тип объекта. Можно использовать оператор
ofдля проверки успешности преобразования. Исходный код Редактировать ObjectConversionError {....deprecated: "See corresponding Defect".} = ObjectConversionDefect- Исходный код Редактировать
OSError = object of CatchableError errorCode*: int32 ## OS-defined error code describing this error.
- Вызывается, если операционная система не смогла выполнить запрос. Исходный код Редактировать
OutOfMemDefect = object of Defect
- Вызывается при неудачных попытках выделения памяти. Исходный код Редактировать
OutOfMemError {....deprecated: "See corresponding Defect".} = OutOfMemDefect- Исходный код Редактировать
OverflowDefect = object of ArithmeticDefect
-
Вызывается при переполнении целых чисел во время выполнения.
Это происходит для вычислений, результаты которых слишком велики, чтобы уместиться в предоставленных битах.
Исходный код Редактировать OverflowError {....deprecated: "See corresponding Defect".} = OverflowDefect- Исходный код Редактировать
RangeDefect = object of Defect
- Вызывается при ошибке проверки диапазона. Исходный код Редактировать
RangeError {....deprecated: "See corresponding Defect".} = RangeDefect- Исходный код Редактировать
ReadIOEffect = object of IOEffect
- Эффект, описывающий операцию чтения Ввода/Вывода. Исходный код Редактировать
ReraiseDefect = object of Defect
- Вызывается, если нет исключения для повторного возбуждения. Исходный код Редактировать
ReraiseError {....deprecated: "See corresponding Defect".} = ReraiseDefect- Исходный код Редактировать
ResourceExhaustedError = object of CatchableError
- Вызывается, если запрос на ресурс не может быть выполнен. Исходный код Редактировать
StackOverflowDefect = object of Defect
- Вызывается, если стек аппаратного обеспечения, используемый для вызовов подпрограмм, переполнился. Исходный код Редактировать
StackOverflowError {....deprecated: "See corresponding Defect".} = StackOverflowDefect- Исходный код Редактировать
TimeEffect = object of RootEffect
- Эффект времени. Исходный код Редактировать
ValueError = object of CatchableError
- Вызывается при ошибках преобразования строк и объектов. Исходный код Редактировать
WriteIOEffect = object of IOEffect
- Эффект, описывающий операцию записи Ввода/Вывода. Исходный код Редактировать
© 2006–2024 Andreas Rumpf
Licensed under the MIT License.
https://nim-lang.org/docs/exceptions.html