Safe Haskell | Safe-Inferred |
---|

# Documentation

A wrapper type that can be used to embed an arbitrary restricted monad as a normal monad.

Note that in general there can be an efficiency loss in using
`AsMonad`

where the underlying restricted monad could have been used
instead. For example when using `Set`

with `AsMonad`

, intermediate results
will not have duplicates removed. On the other hand, it becomes legal
to use intermediate results that do not have `Ord`

instances.