Spec-Zone.ru › Haskell 7

Control.Monad.IO.Class

Авторские права (с) Andy Gill 2001, (с) Oregon Graduate Institute of Science and Technology, 2001
Лицензия BSD-style (см. файл LICENSE)
Поддерживающий ross@soi.city.ac.uk
Устойчивость экспериментальная
Переносимость переносимая
Safe Haskell Safe
Язык Haskell98

Описание

Класс монад, основанных на IO.

class Monad m => MonadIO m where Исходный код

Монады, в которых могут быть встроены вычисления IO. Любая монада, созданная путем применения последовательности трансформаторов монады к монаде IO, будет экземпляром этого класса.

Экземпляры должны удовлетворять следующим законам, которые указывают, что liftIO является трансформатором монад:

  • liftIO . return = return
  • liftIO (m >>= f) = liftIO m >>= (liftIO . f)

Методы

liftIO :: IO a -> m a Исходный код

Поднять вычисление из монады IO.

Экземпляры

MonadIO IO
MonadIO m => MonadIO (IdentityT m)
MonadIO m => MonadIO (ListT m)
MonadIO m => MonadIO (MaybeT m)
MonadIO m => MonadIO (ContT r m)
MonadIO m => MonadIO (ReaderT r m)
MonadIO m => MonadIO (StateT s m)
MonadIO m => MonadIO (StateT s m)
MonadIO m => MonadIO (ExceptT e m)
(Error e, MonadIO m) => MonadIO (ErrorT e m)
(Monoid w, MonadIO m) => MonadIO (WriterT w m)
(Monoid w, MonadIO m) => MonadIO (WriterT w m)
(Monoid w, MonadIO m) => MonadIO (RWST r w s m)
(Monoid w, MonadIO m) => MonadIO (RWST r w s m)

© The University of Glasgow and others
Licensed under a BSD-style license (see top of the page).
https://downloads.haskell.org/~ghc/7.10.3/docs/html/libraries/transformers-0.4.2.0/Control-Monad-IO-Class.html

Spec-Zone.ru

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