- replusify :: MonadPlus m => [a] -> m a
- tomaybet :: Monad m => LogicT m a -> MaybeT m a
- class Treeish l where
- type Produ t = Producer ProxyFast t
- type Consu t = Consumer ProxyFast t
- class Functor l => Loggy l where
- data LogEntry
- type Image = ByteString
- data Nullipotent m a
- type Tag = Text
- data Sealed m
- addTag :: Tag -> Sealed m -> Sealed m
Convenience function to transform a list into any
Transforms a zero-or-many result into a zero-or-one result.
Class of types whose values have children of the same type as themselves.
All direct or indirect descendants, plus the original value.
Logs a message and returns the second argument unchanged.
Wraps a monad in order to tag those operations which don't actually change the state of the remote system. For example: taking a screenshot doesn't change the state of a GUI, as opposed to clicking a button.
Encapsulates a monadic action so that clients can't manipulate it in any way, only dispatch it to some function.
There may be tags attached that describe the action. Clients should be able to inspect the tags.