Safe Haskell | None |
---|
- data AOT m a
- mkAOT :: (AspectEnv (AOT m) -> m (a, AspectEnv (AOT m))) -> AOT m a
- runAOT :: Typeable1Monad m => AOT m a -> m a
- wappt :: (Typeable1Monad m, PolyTypeable (a -> AOT m b)) => FunctionTag -> (a -> AOT m b) -> a -> AOT m b
Documentation
MonadTrans AOT | |
(Typeable1Monad m, MonadError s m) => MonadError s (AOT m) | |
(Typeable1Monad m, MonadReader r m) => MonadReader r (AOT m) | |
MonadState s m => MonadState s (AOT m) | |
(Typeable1Monad m, MonadWriter w m) => MonadWriter w (AOT m) | |
Monad m => Monad (AOT m) | |
Functor m => Functor (AOT m) | |
Typeable1Monad m => Typeable1 (AOT m) | Typeable instance so types of computations in AOT can be compared (like in pcCall and pcType) |
MonadPlus m => MonadPlus (AOT m) | |
MonadIO m => MonadIO (AOT m) | |
MonadCont m => MonadCont (AOT m) | |
Typeable1Monad m => TaggedApp (AOT m) | |
Typeable1Monad m => OpenApp (AOT m) | Every regular functions is tagged with the same default tag. |
(Typeable1Monad m, MonadDeploy AOT m) => AOPMonad (AOT m) | The semantics of aspect deployment are defined in the MonadDeploy typeclass. AOT assumes it is on top of an MonadDeploy instance, and uses that functions for aspect deployment. |
runAOT :: Typeable1Monad m => AOT m a -> m aSource
Runs an AOT computation to obtain a computation in the underlying monad
wappt :: (Typeable1Monad m, PolyTypeable (a -> AOT m b)) => FunctionTag -> (a -> AOT m b) -> a -> AOT m bSource
Implementation of woven application for AOT, used in the overloading of #.