packages feed

fixed-vector-0.3.0.1: Data/Vector/Fixed/Internal/Id.hs

-- |
-- Strict identity monad
module Data.Vector.Fixed.Internal.Id (
    Id(..)
  ) where

-- | Strict identity monad
newtype Id a = Id { runID :: a }

instance Monad Id where
  return     = Id
  Id a >>= f = f a
  {-# INLINE return #-}
  {-# INLINE (>>=)  #-}