mirror of
https://github.com/hasura/graphql-engine.git
synced 2024-12-16 01:44:03 +03:00
11a454c2d6
This commit applies ormolu to the whole Haskell code base by running `make format`. For in-flight branches, simply merging changes from `main` will result in merge conflicts. To avoid this, update your branch using the following instructions. Replace `<format-commit>` by the hash of *this* commit. $ git checkout my-feature-branch $ git merge <format-commit>^ # and resolve conflicts normally $ make format $ git commit -a -m "reformat with ormolu" $ git merge -s ours post-ormolu https://github.com/hasura/graphql-engine-mono/pull/2404 GitOrigin-RevId: 75049f5c12f430c615eafb4c6b8e83e371e01c8e
28 lines
675 B
Haskell
28 lines
675 B
Haskell
-- | A tiny mtl-style wrapper around 'U.newUnique'.
|
|
module Control.Monad.Unique
|
|
( U.Unique,
|
|
MonadUnique (..),
|
|
)
|
|
where
|
|
|
|
import Data.Unique qualified as U
|
|
import Hasura.Prelude
|
|
|
|
class (Monad m) => MonadUnique m where
|
|
newUnique :: m U.Unique
|
|
|
|
instance MonadUnique IO where
|
|
newUnique = U.newUnique
|
|
|
|
instance (MonadUnique m) => MonadUnique (ExceptT e m) where
|
|
newUnique = lift newUnique
|
|
|
|
instance (MonadUnique m) => MonadUnique (ReaderT r m) where
|
|
newUnique = lift newUnique
|
|
|
|
instance (MonadUnique m) => MonadUnique (StateT s m) where
|
|
newUnique = lift newUnique
|
|
|
|
instance (Monoid w, MonadUnique m) => MonadUnique (WriterT w m) where
|
|
newUnique = lift newUnique
|