Spec-Zone.ru › Haskell 9

GHC.IO.Exception

Авторские права (c) The University of Glasgow 2009
Лицензия see libraries/base/LICENSE
Сопровождающий libraries@haskell.org
Стабильность внутренний
Переносимость непереносимый
Безопасный Haskell Safe
Язык Haskell2010

Описание

Типы исключений и функции, связанные с IO

API этого модуля нестабилен и не предназначен для использования широкой публикой. Если вам непременно нужно от него зависеть, обязательно используйте строгое верхнее ограничение, например base < 4.X вместо base < 5, поскольку интерфейс может быстро меняться без особого предупреждения.

data BlockedIndefinitelyOnMVar Источник

Поток заблокирован на MVar, но других ссылок на MVar нет, поэтому он никогда не сможет продолжить выполнение.

Конструкторы

BlockedIndefinitelyOnMVar
Экземпляры
Сведения об экземплярах
Exception BlockedIndefinitelyOnMVar Источник

Начиная с: base-4.1.0.0

Сведения об экземпляре

Определено в GHC.Internal.IO.Exception

Методы

toException :: BlockedIndefinitelyOnMVar -> SomeException Источник

fromException :: SomeException -> Maybe BlockedIndefinitelyOnMVar Источник

displayException :: BlockedIndefinitelyOnMVar -> String Источник

backtraceDesired :: BlockedIndefinitelyOnMVar -> Bool Источник

Show BlockedIndefinitelyOnMVar Источник

Начиная с: base-4.1.0.0

Сведения об экземпляре

Определено в GHC.Internal.IO.Exception

Методы

showsPrec :: Int -> BlockedIndefinitelyOnMVar -> ShowS Источник

show :: BlockedIndefinitelyOnMVar -> String Источник

showList :: [BlockedIndefinitelyOnMVar] -> ShowS Источник

blockedIndefinitelyOnMVar :: SomeException Источник

data BlockedIndefinitelyOnSTM Источник

Поток ожидает повторной попытки транзакции STM, но ссылок на какие-либо задействованные TVar больше нет, поэтому он никогда не сможет продолжить выполнение.

Конструкторы

BlockedIndefinitelyOnSTM
Экземпляры
Сведения об экземплярах
Exception BlockedIndefinitelyOnSTM Источник

Начиная с: base-4.1.0.0

Сведения об экземпляре

Определено в GHC.Internal.IO.Exception

Методы

toException :: BlockedIndefinitelyOnSTM -> SomeException Источник

fromException :: SomeException -> Maybe BlockedIndefinitelyOnSTM Источник

displayException :: BlockedIndefinitelyOnSTM -> String Источник

backtraceDesired :: BlockedIndefinitelyOnSTM -> Bool Источник

Show BlockedIndefinitelyOnSTM Источник

Начиная с: base-4.1.0.0

Сведения об экземпляре

Определено в GHC.Internal.IO.Exception

Методы

showsPrec :: Int -> BlockedIndefinitelyOnSTM -> ShowS Источник

show :: BlockedIndefinitelyOnSTM -> String Источник

showList :: [BlockedIndefinitelyOnSTM] -> ShowS Источник

blockedIndefinitelyOnSTM :: SomeException Источник

data Deadlock Источник

Нет потоков, готовых к выполнению, поэтому программа попала в тупик. Исключение Deadlock возникает только в главном потоке.

Конструкторы

Deadlock
Экземпляры
Сведения об экземплярах
Exception Deadlock Источник

Начиная с: base-4.1.0.0

Сведения об экземпляре

Определено в GHC.Internal.IO.Exception

Методы

toException :: Deadlock -> SomeException Источник

fromException :: SomeException -> Maybe Deadlock Источник

displayException :: Deadlock -> String Источник

backtraceDesired :: Deadlock -> Bool Источник

Show Deadlock Источник

Начиная с: base-4.1.0.0

Сведения об экземпляре

Определено в GHC.Internal.IO.Exception

Методы

showsPrec :: Int -> Deadlock -> ShowS Источник

show :: Deadlock -> String Источник

showList :: [Deadlock] -> ShowS Источник

data AllocationLimitExceeded Источник

Этот поток превысил лимит выделения памяти. См. setAllocationCounter и enableAllocationLimit.

Начиная с: base-4.8.0.0

Конструкторы

AllocationLimitExceeded
Экземпляры
Сведения об экземплярах
Exception AllocationLimitExceeded Источник

Начиная с: base-4.8.0.0

Сведения об экземпляре

Определено в GHC.Internal.IO.Exception

Методы

toException :: AllocationLimitExceeded -> SomeException Источник

fromException :: SomeException -> Maybe AllocationLimitExceeded Источник

displayException :: AllocationLimitExceeded -> String Источник

backtraceDesired :: AllocationLimitExceeded -> Bool Источник

Show AllocationLimitExceeded Источник

Начиная с: base-4.7.1.0

Сведения об экземпляре

Определено в GHC.Internal.IO.Exception

Методы

showsPrec :: Int -> AllocationLimitExceeded -> ShowS Источник

show :: AllocationLimitExceeded -> String Источник

showList :: [AllocationLimitExceeded] -> ShowS Источник

allocationLimitExceeded :: SomeException Источник

newtype AssertionFailed Источник

Для assert применён False.

Конструкторы

AssertionFailed String
Экземпляры
Сведения об экземплярах
Exception AssertionFailed Источник

Начиная с: base-4.1.0.0

Сведения об экземпляре

Определено в GHC.Internal.IO.Exception

Методы

toException :: AssertionFailed -> SomeException Источник

fromException :: SomeException -> Maybe AssertionFailed Источник

displayException :: AssertionFailed -> String Источник

backtraceDesired :: AssertionFailed -> Bool Источник

Show AssertionFailed Источник

Начиная с: base-4.1.0.0

Сведения об экземпляре

Определено в GHC.Internal.IO.Exception

Методы

showsPrec :: Int -> AssertionFailed -> ShowS Источник

show :: AssertionFailed -> String Источник

showList :: [AssertionFailed] -> ShowS Источник

newtype CompactionFailed Источник

При уплотнении обнаружен объект, который нельзя уплотнить. Функции, изменяемые объекты и закреплённые объекты уплотнить нельзя. См. compact.

Начиная с: base-4.10.0.0

Конструкторы

CompactionFailed String
Экземпляры
Сведения об экземплярах
Exception CompactionFailed Исходный код

Начиная с: base-4.10.0.0

Сведения об экземпляре

Определено в GHC.Internal.IO.Exception

Методы

toException :: CompactionFailed -> SomeException Исходный код

fromException :: SomeException -> Maybe CompactionFailed Исходный код

displayException :: CompactionFailed -> String Исходный код

backtraceDesired :: CompactionFailed -> Bool Исходный код

Show CompactionFailed Исходный код

Начиная с: base-4.10.0.0

Сведения об экземпляре

Определено в GHC.Internal.IO.Exception

Методы

showsPrec :: Int -> CompactionFailed -> ShowS Исходный код

show :: CompactionFailed -> String Исходный код

showList :: [CompactionFailed] -> ShowS Исходный код

cannotCompactFunction :: SomeException Исходный код

cannotCompactPinned :: SomeException Исходный код

cannotCompactMutable :: SomeException Исходный код

data SomeAsyncException Исходный код

Суперкласс асинхронных исключений.

Начиная с: base-4.7.0.0

Конструкторы

Exception e => SomeAsyncException e
Экземпляры
Сведения об экземплярах
Exception SomeAsyncException Исходный код

Начиная с: base-4.7.0.0

Сведения об экземпляре

Определено в GHC.Internal.IO.Exception

Методы

toException :: SomeAsyncException -> SomeException Исходный код

fromException :: SomeException -> Maybe SomeAsyncException Исходный код

displayException :: SomeAsyncException -> String Исходный код

backtraceDesired :: SomeAsyncException -> Bool Исходный код

Show SomeAsyncException Исходный код

Начиная с: base-4.7.0.0

Сведения об экземпляре

Определено в GHC.Internal.IO.Exception

Методы

showsPrec :: Int -> SomeAsyncException -> ShowS Исходный код

show :: SomeAsyncException -> String Исходный код

showList :: [SomeAsyncException] -> ShowS Исходный код

asyncExceptionToException :: Exception e => e -> SomeException Исходный код

Начиная с: base-4.7.0.0

asyncExceptionFromException :: Exception e => SomeException -> Maybe e Исходный код

Начиная с: base-4.7.0.0

data AsyncException Исходный код

Асинхронные исключения.

Конструкторы

StackOverflow

Стек текущего потока превысил установленный предел. Поскольку было сгенерировано исключение, стек потока снова окажется в пределах установленного ограничения, однако программисту следует немедленно принять меры для устранения проблемы.

HeapOverflow

Куча программы приближается к пределу, и программе следует принять меры, чтобы уменьшить объём хранимых в ней живых данных. Примечания:

  • Не определено, какой поток получит это исключение. В настоящее время GHC отправляет его тому же потоку, который получает UserInterrupt, но в будущем это может измениться.
  • В настоящее время RTS GHC может восстановиться после переполнения кучи, только если обнаружит превышение явно заданного ограничения памяти (установленного с помощью флагов RTS). Если операционной системе не удаётся выделить память, программа немедленно завершается.
ThreadKilled

Это исключение генерируется другим потоком при вызове killThread или системой, если ей по какой-либо причине необходимо завершить поток.

UserInterrupt

По умолчанию это исключение генерируется в главном потоке программы, когда пользователь запрашивает завершение программы обычным способом (например, нажатием Control-C в консоли).

Экземпляры
Сведения об экземплярах
Eq AsyncException Исходный код

Начиная с: base-4.2.0.0

Сведения об экземпляре

Определено в GHC.Internal.IO.Exception

Методы

(==) :: AsyncException -> AsyncException -> Bool Исходный код

(/=) :: AsyncException -> AsyncException -> Bool Исходный код

Ord AsyncException Исходный код

Начиная с: base-4.2.0.0

Сведения об экземпляре

Определено в GHC.Internal.IO.Exception

Методы

compare :: AsyncException -> AsyncException -> Ordering Исходный код

(<) :: AsyncException -> AsyncException -> Bool Исходный код

(<=) :: AsyncException -> AsyncException -> Bool Исходный код

(>) :: AsyncException -> AsyncException -> Bool Исходный код

(>=) :: AsyncException -> AsyncException -> Bool Исходный код

max :: AsyncException -> AsyncException Исходный код

min :: AsyncException -> AsyncException Исходный код

Exception AsyncException Исходный код

Начиная с: base-4.7.0.0

Сведения об экземпляре

Определено в GHC.Internal.IO.Exception

Методы

toException :: AsyncException -> SomeException Исходный код

fromException :: SomeException -> Maybe AsyncException Исходный код

displayException :: AsyncException -> String Исходный код

backtraceDesired :: AsyncException -> Bool Исходный код

Show AsyncException Исходный код

Начиная с: base-4.1.0.0

Сведения об экземпляре

Определено в GHC.Internal.IO.Exception

Методы

showsPrec :: Int -> AsyncException -> ShowS Исходный код

show :: AsyncException -> String Исходный код

showList :: [AsyncException] -> ShowS Исходный код

stackOverflow :: SomeException Исходный код

heapOverflow :: SomeException Исходный код

data ArrayException Исходный код

Исключения, генерируемые операциями с массивами

Конструкторы

IndexOutOfBounds String

Предпринята попытка обратиться к элементу массива за пределами объявленных границ.

UndefinedElement String

Предпринята попытка вычислить элемент массива, который не был инициализирован.

Экземпляры
Сведения об экземплярах
Eq ArrayException Источник

Начиная с: base-4.2.0.0

Сведения об экземпляре

Определено в GHC.Internal.IO.Exception

Методы

(==) :: ArrayException -> ArrayException -> Bool Источник

(/=) :: ArrayException -> ArrayException -> Bool Источник

Ord ArrayException Источник

Начиная с: base-4.2.0.0

Сведения об экземпляре

Определено в GHC.Internal.IO.Exception

Методы

compare :: ArrayException -> ArrayException -> Ordering Источник

(<) :: ArrayException -> ArrayException -> Bool Источник

(<=) :: ArrayException -> ArrayException -> Bool Источник

(>) :: ArrayException -> ArrayException -> Bool Источник

(>=) :: ArrayException -> ArrayException -> Bool Источник

max :: ArrayException -> ArrayException -> ArrayException Источник

min :: ArrayException -> ArrayException -> ArrayException Источник

Exception ArrayException Источник

Начиная с: base-4.1.0.0

Сведения об экземпляре

Определено в GHC.Internal.IO.Exception

Методы

toException :: ArrayException -> SomeException Источник

fromException :: SomeException -> Maybe ArrayException Источник

displayException :: ArrayException -> String Источник

backtraceDesired :: ArrayException -> Bool Источник

Show ArrayException Источник

Начиная с: base-4.1.0.0

Сведения об экземпляре

Определено в GHC.Internal.IO.Exception

Методы

showsPrec :: Int -> ArrayException -> ShowS Источник

show :: ArrayException -> String Источник

showList :: [ArrayException] -> ShowS Источник

data ExitCode Источник

Определяет коды завершения, которые может возвращать программа.

Конструкторы

ExitSuccess

указывает на успешное завершение;

ExitFailure Int

указывает на сбой программы с кодом завершения. Точная интерпретация кода зависит от операционной системы. В частности, некоторые значения могут быть запрещены (например, 0 в POSIX-совместимой системе).

Экземпляры
Сведения об экземплярах
Eq ExitCode Источник
Сведения об экземпляре

Определено в GHC.Internal.IO.Exception

Методы

(==) :: ExitCode -> ExitCode -> Bool Источник

(/=) :: ExitCode -> ExitCode -> Bool Источник

Ord ExitCode Источник
Сведения об экземпляре

Определено в GHC.Internal.IO.Exception

Методы

compare :: ExitCode -> ExitCode -> Ordering Источник

(<) :: ExitCode -> ExitCode -> Bool Источник

(<=) :: ExitCode -> ExitCode -> Bool Источник

(>) :: ExitCode -> ExitCode -> Bool Источник

(>=) :: ExitCode -> ExitCode -> Bool Источник

max :: ExitCode -> ExitCode -> ExitCode Источник

min :: ExitCode -> ExitCode -> ExitCode Источник

Exception ExitCode Источник

Начиная с: base-4.1.0.0

Сведения об экземпляре

Определено в GHC.Internal.IO.Exception

Методы

toException :: ExitCode -> SomeException Источник

fromException :: SomeException -> Maybe ExitCode Источник

displayException :: ExitCode -> String Источник

backtraceDesired :: ExitCode -> Bool Источник

Generic ExitCode Источник
Сведения об экземпляре

Определено в GHC.Internal.IO.Exception

Связанные типы

type Rep ExitCode
Сведения об экземпляре

Определено в GHC.Internal.IO.Exception

type Rep ExitCode = D1 ('MetaData "ExitCode" "GHC.Internal.IO.Exception" "ghc-internal" 'False) (C1 ('MetaCons "ExitSuccess" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "ExitFailure" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Int)))

Методы

from :: ExitCode -> Rep ExitCode x Источник

to :: Rep ExitCode x -> ExitCode Источник

Read ExitCode Источник
Сведения об экземпляре

Определено в GHC.Internal.IO.Exception

Методы

readsPrec :: Int -> ReadS ExitCode Источник

readList :: ReadS [ExitCode] Источник

readPrec :: ReadPrec ExitCode Источник

readListPrec :: ReadPrec [ExitCode] Источник

Show ExitCode Источник
Сведения об экземпляре

Определено в GHC.Internal.IO.Exception

Методы

showsPrec :: Int -> ExitCode -> ShowS Источник

show :: ExitCode -> String Источник

showList :: [ExitCode] -> ShowS Источник

type Rep ExitCode Источник
Сведения об экземпляре

Определено в GHC.Internal.IO.Exception

type Rep ExitCode = D1 ('MetaData "ExitCode" "GHC.Internal.IO.Exception" "ghc-internal" 'False) (C1 ('MetaCons "ExitSuccess" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "ExitFailure" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Int)))

data FixIOException Источник

Исключение, возникающее при обнаружении бесконечного цикла в fixIO.

Начиная с: base-4.11.0.0

Конструкторы

FixIOException
Экземпляры
Подробности экземпляров
Exception FixIOException Источник

Начиная с: base-4.11.0.0

Подробности экземпляра

Определён в GHC.Internal.IO.Exception

Методы

toException :: FixIOException -> SomeException Источник

fromException :: SomeException -> Maybe FixIOException Источник

displayException :: FixIOException -> String Источник

backtraceDesired :: FixIOException -> Bool Источник

Show FixIOException Источник

Начиная с: base-4.11.0.0

Подробности экземпляра

Определён в GHC.Internal.IO.Exception

Методы

showsPrec :: Int -> FixIOException -> ShowS Источник

show :: FixIOException -> String Источник

showList :: [FixIOException] -> ShowS Источник

ioException :: HasCallStack => IOException -> IO a Источник

ioError :: HasCallStack => IOError -> IO a Источник

Вызывает IOError в монаде IO.

type IOError = IOException Источник

Тип исключений Haskell 2010 для монады IO. Любая операция ввода-вывода может вызвать IOError вместо возврата результата. Более общий тип исключений, включающий также возникающие в чистом коде исключения, см. в Exception.

В Haskell 2010 это непрозрачный тип.

data IOException Источник

Исключения, возникающие в монаде IO. IOException содержит более конкретный тип ошибки, описательную строку и, возможно, дескриптор, использовавшийся при регистрации ошибки.

Конструкторы

IOError

Поля

  • ioe_handle :: Maybe Handle

    дескриптор, использованный действием, зарегистрировавшим ошибку.

  • ioe_type :: IOErrorType

    тип ошибки.

  • ioe_location :: String

    местоположение.

  • ioe_description :: String

    сведения, относящиеся к конкретному типу ошибки.

  • ioe_errno :: Maybe CInt

    значение errno, приведшее к этой ошибке, если оно есть.

  • ioe_filename :: Maybe FilePath

    имя файла, к которому относится ошибка (при формировании этого поля из, например, ByteString или других типов некоторые библиотеки могут предполагать иные кодировки)

Экземпляры
Подробности экземпляров
Eq IOException Источник

Начиная с: base-4.1.0.0

Подробности экземпляра

Определён в GHC.Internal.IO.Exception

Методы

(==) :: IOException -> IOException -> Bool Источник

(/=) :: IOException -> IOException -> Bool Источник

Exception IOException Источник

Начиная с: base-4.1.0.0

Подробности экземпляра

Определён в GHC.Internal.IO.Exception

Методы

toException :: IOException -> SomeException Источник

fromException :: SomeException -> Maybe IOException Источник

displayException :: IOException -> String Источник

backtraceDesired :: IOException -> Bool Источник

Show IOException Источник

Начиная с: base-4.1.0.0

Подробности экземпляра

Определён в GHC.Internal.IO.Exception

Методы

showsPrec :: Int -> IOException -> ShowS Источник

show :: IOException -> String Источник

showList :: [IOException] -> ShowS Источник

data IOErrorType Источник

Абстрактный тип, содержащий значение для каждого варианта IOError.

Конструкторы

AlreadyExists
NoSuchThing
ResourceBusy
ResourceExhausted
EOF
IllegalOperation
PermissionDenied
UserError
UnsatisfiedConstraints
SystemError
ProtocolError
OtherError
InvalidArgument
InappropriateType
HardwareFault
UnsupportedOperation
TimeExpired
ResourceVanished
Interrupted
Экземпляры
Подробности экземпляров
Eq IOErrorType Источник

Начиная с: base-4.1.0.0

Подробности экземпляра

Определён в GHC.Internal.IO.Exception

Методы

(==) :: IOErrorType -> IOErrorType -> Bool Источник

(/=) :: IOErrorType -> IOErrorType -> Bool Источник

Show IOErrorType Источник

Начиная с: base-4.1.0.0

Подробности экземпляра

Определён в GHC.Internal.IO.Exception

Методы

showsPrec :: Int -> IOErrorType -> ShowS Источник

show :: IOErrorType -> String Источник

showList :: [IOErrorType] -> ShowS Источник

userError :: String -> IOError Источник

Создаёт значение IOError со строкой, описывающей ошибку. Метод fail экземпляра IO класса Monad вызывает userError, например:

instance Monad IO where
  ...
  fail s = ioError (userError s)

assertError :: (?callStack :: CallStack) => Bool -> a -> a Источник

unsupportedOperation :: IOError Источник

untangle :: Addr# -> String -> String Источник

© The University of Glasgow and others
Licensed under a BSD-style license (see top of the page).
https://downloads.haskell.org/~ghc/9.14.1/docs/libraries/base-4.22.0.0-66f8/GHC-IO-Exception.html

Spec-Zone.ru

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