packages feed

async-refresh-tokens-0.4.0.0: src/Control/Concurrent/Async/Refresh/Tokens/Prelude.hs

{-|
Module      : Control.Concurrent.Async.Refresh.Tokens.Prelude
Description : Prelude for the async-refresh-tokens package.
Copyright   : (c) Moritz Clasmeier, 2017-2018
License     : BSD3
Maintainer  : mtesseract@silverratio.net
Stability   : experimental
Portability : POSIX
-}

module Control.Concurrent.Async.Refresh.Tokens.Prelude
  ( module Prelude
  , module Control.Exception.Safe
  , module Formatting
  , module Control.Monad.Logger
  , Text
  , ByteString
  , fromMaybe
  , forever, void
  , MonadIO
  , undefined
  , tshow
  ) where

import           Control.Exception.Safe
import           Control.Monad
import           Control.Monad.IO.Class
import           Control.Monad.Logger
import           Data.ByteString        (ByteString)
import           Data.Maybe             (fromMaybe)
import           Data.Text              (Text)
import qualified Data.Text
import           Formatting
import           Prelude                hiding (head, tail, undefined)
import qualified Prelude                as Prelude

-- | Version of 'undefined' with a deprecated pragma.
undefined :: a
undefined = Prelude.undefined
{-# DEPRECATED undefined "Don't use 'undefined' in production code" #-}

-- | Modern version of 'Prelude.show' producing 'Text' instead of
-- 'String'.
tshow :: Show a => a -> Text
tshow = Data.Text.pack . show