Spec-Zone.ru › Nim

system/exceptions

ИсточникИзменить

Типы исключений и эффектов, используемые в коде Nim.

Типы

AccessViolationDefect = object of Defect
Выбрасывается при ошибках доступа к памяти. Источник Изменить
AccessViolationError {....deprecated: "See corresponding Defect".} = AccessViolationDefect
Устаревшее: См. соответствующий Defect
Источник Изменить
ArithmeticDefect = object of Defect
Выбрасывается, если произошла ошибка арифметики. Источник Изменить
ArithmeticError {....deprecated: "See corresponding Defect".} = ArithmeticDefect
Устаревшее: См. соответствующий Defect
Источник Изменить
AssertionDefect = object of Defect

Выбрасывается, когда утверждение оказывается ложным.

Обычно результат использования шаблона assert().

Источник Изменить
AssertionError {....deprecated: "See corresponding Defect".} = AssertionDefect
Устаревшее: См. соответствующий Defect
Источник Изменить
DeadThreadDefect = object of Defect
Выбрасывается, если попытка отправить сообщение мёртвой нити. Источник Изменить
DeadThreadError {....deprecated: "See corresponding Defect".} = DeadThreadDefect
Устаревшее: См. соответствующий Defect
Источник Изменить
DivByZeroDefect = object of ArithmeticDefect
Выбрасывается при ошибках целочисленного деления на ноль во время выполнения. Источник Изменить
DivByZeroError {....deprecated: "See corresponding Defect".} = DivByZeroDefect
Устаревшее: См. соответствующий Defect
Источник Изменить
EOFError = object of IOError
Выбрасывается, если произошла ошибка "конец файла" ввода-вывода. Источник Изменить
ExecIOEffect = object of IOEffect
Эффект, описывающий операцию ввода-вывода. Источник Изменить
FieldDefect = object of Defect
Выбрасывается, если поле записи недоступно, потому что значение его дискриминанта не подходит. Источник Изменить
FieldError {....deprecated: "See corresponding Defect".} = FieldDefect
Устаревшее: См. соответствующий Defect
Источник Изменить
FloatDivByZeroDefect = object of FloatingPointDefect

Выбрасывается при делении на ноль.

Делитель равен нулю, а делимое - конечное ненулевое число.

Источник Изменить
FloatDivByZeroError {....deprecated: "See corresponding Defect".} = FloatDivByZeroDefect
Устаревшее: См. соответствующий Defect
Источник Изменить
FloatInexactDefect = object of FloatingPointDefect

Выбрасывается для неточных результатов.

Операция произвела результат, который нельзя представить с бесконечной точностью — например: 2.0 / 3.0, log(1.1)

Примечание: Nim в настоящее время не обнаруживает это!

Источник Изменить
FloatInexactError {....deprecated: "See corresponding Defect".} = FloatInexactDefect
Устаревшее: См. соответствующий Defect
Источник Изменить
FloatingPointDefect = object of Defect
Базовый класс для исключений с плавающей запятой. Источник Изменить
FloatingPointError {....deprecated: "See corresponding Defect".} = FloatingPointDefect
Устаревшее: См. соответствующий Defect
Источник Изменить
FloatInvalidOpDefect = object of FloatingPointDefect

Выбрасывается при недопустимых операциях согласно IEEE.

Выбрасывается при 0.0/0.0, например.

Источник Изменить
FloatInvalidOpError {....deprecated: "See corresponding Defect".} = FloatInvalidOpDefect
Устаревшее: См. соответствующий Defect
Источник Изменить
FloatOverflowDefect = object of FloatingPointDefect

Выбрасывается при переполнении.

Операция произвела результат, превышающий диапазон показателя степени.

Источник Изменить
FloatOverflowError {....deprecated: "See corresponding Defect".} = FloatOverflowDefect
Устаревшее: См. соответствующий Defect
Источник Изменить
FloatUnderflowDefect = object of FloatingPointDefect

Выбрасывается при подполеннии.

Операция произвела результат, слишком маленький для представления как нормального числа.

Источник Изменить
FloatUnderflowError {....deprecated: "See corresponding Defect".} = FloatUnderflowDefect
Устаревшее: См. соответствующий Defect
Источник Изменить
IndexDefect = object of Defect
Выбрасывается, если индекс массива выходит за пределы. Источник Изменить
IndexError {....deprecated: "See corresponding Defect".} = IndexDefect
Устаревшее: См. соответствующий Defect
Источник Изменить
IOEffect = object of RootEffect
Эффект ввода-вывода. Источник Изменить
IOError = object of CatchableError
Выбрасывается, если произошла ошибка ввода-вывода. Источник Изменить
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

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API