curry-frontend-1.0.4: Compile the functional logic language Curry to several intermediate formats

Copyright(c) 2011 - 2016 Björn Peemöller
LicenseBSD-3-clause
Maintainerbjp@informatik.uni-kiel.de
Stabilityexperimental
Portabilityportable
Safe HaskellSafe
LanguageHaskell2010

Base.Messages

Contents

Description

This module defines several operations to construct and emit compiler messages to the user.

Synopsis

Output of user information

class Monad m => MonadIO (m :: Type -> Type) where Source #

Monads in which IO computations may be embedded. Any monad built by applying a sequence of monad transformers to the IO monad will be an instance of this class.

Instances should satisfy the following laws, which state that liftIO is a transformer of monads:

Methods

liftIO :: IO a -> m a Source #

Lift a computation from the IO monad.

Instances
MonadIO IO

Since: base-4.9.0.0

Instance details

Defined in Control.Monad.IO.Class

Methods

liftIO :: IO a -> IO a Source #

MonadIO m => MonadIO (ListT m) 
Instance details

Defined in Control.Monad.Trans.List

Methods

liftIO :: IO a -> ListT m a Source #

MonadIO m => MonadIO (MaybeT m) 
Instance details

Defined in Control.Monad.Trans.Maybe

Methods

liftIO :: IO a -> MaybeT m a Source #

MonadIO m => MonadIO (IdentityT m) 
Instance details

Defined in Control.Monad.Trans.Identity

Methods

liftIO :: IO a -> IdentityT m a Source #

(Error e, MonadIO m) => MonadIO (ErrorT e m) 
Instance details

Defined in Control.Monad.Trans.Error

Methods

liftIO :: IO a -> ErrorT e m a Source #

MonadIO m => MonadIO (ExceptT e m) 
Instance details

Defined in Control.Monad.Trans.Except

Methods

liftIO :: IO a -> ExceptT e m a Source #

MonadIO m => MonadIO (ReaderT r m) 
Instance details

Defined in Control.Monad.Trans.Reader

Methods

liftIO :: IO a -> ReaderT r m a Source #

MonadIO m => MonadIO (StateT s m) 
Instance details

Defined in Control.Monad.Trans.State.Lazy

Methods

liftIO :: IO a -> StateT s m a Source #

MonadIO m => MonadIO (StateT s m) 
Instance details

Defined in Control.Monad.Trans.State.Strict

Methods

liftIO :: IO a -> StateT s m a Source #

(Monoid w, MonadIO m) => MonadIO (WriterT w m) 
Instance details

Defined in Control.Monad.Trans.Writer.Lazy

Methods

liftIO :: IO a -> WriterT w m a Source #

(Monoid w, MonadIO m) => MonadIO (WriterT w m) 
Instance details

Defined in Control.Monad.Trans.Writer.Strict

Methods

liftIO :: IO a -> WriterT w m a Source #

MonadIO m => MonadIO (ContT r m) 
Instance details

Defined in Control.Monad.Trans.Cont

Methods

liftIO :: IO a -> ContT r m a Source #

(Monoid w, MonadIO m) => MonadIO (RWST r w s m) 
Instance details

Defined in Control.Monad.Trans.RWS.Lazy

Methods

liftIO :: IO a -> RWST r w s m a Source #

(Monoid w, MonadIO m) => MonadIO (RWST r w s m) 
Instance details

Defined in Control.Monad.Trans.RWS.Strict

Methods

liftIO :: IO a -> RWST r w s m a Source #

status :: MonadIO m => Options -> String -> m () Source #

Print a status message, depending on the current verbosity

putMsg :: MonadIO m => String -> m () Source #

Print a message on stdout

putErrLn :: MonadIO m => String -> m () Source #

Print an error message on stderr

putErrsLn :: MonadIO m => [String] -> m () Source #

Print a list of error messages on stderr

program abortion

abortWith :: [String] -> IO a Source #

Print a list of Strings as error messages on stderr and abort the program

abortWithMessage :: Message -> IO a Source #

Print a single error message on stderr and abort the program

abortWithMessages :: [Message] -> IO a Source #

Print a list of error messages on stderr and abort the program

warnOrAbort :: WarnOpts -> [Message] -> IO () Source #

Print a list of warning messages on stderr and abort the program |if the -Werror option is set

internalError :: String -> a Source #

Raise an internal error

creating messages

data Message #

Instances
Eq Message 
Instance details

Defined in Curry.Base.Message

Ord Message 
Instance details

Defined in Curry.Base.Message

Show Message 
Instance details

Defined in Curry.Base.Message

HasPosition Message 
Instance details

Defined in Curry.Base.Message

Methods

getPosition :: Message -> Position

setPosition :: Position -> Message -> Message

Pretty Message 
Instance details

Defined in Curry.Base.Message

posMessage :: HasPosition p => p -> Doc -> Message #