{-# LANGUAGE CPP #-}
{-# LANGUAGE ScopedTypeVariables #-}
#if __GLASGOW_HASKELL__ >= 706
{-# LANGUAGE PolyKinds #-}
#endif
module Language.Haskell.TH.Lift.Internal where
#if MIN_VERSION_template_haskell(2,16,0)
import GHC.Exts (RuntimeRep, TYPE)
#endif
import Language.Haskell.TH.Syntax
#if MIN_VERSION_template_haskell(2,17,0)
errorQuoteExp :: Quote q => String -> q Exp
#else
errorQuoteExp :: String -> Q Exp
#endif
errorQuoteExp :: forall (q :: * -> *). Quote q => String -> q Exp
errorQuoteExp = forall a. HasCallStack => String -> a
error
#if MIN_VERSION_template_haskell(2,17,0)
unsafeSpliceCoerce :: forall (r :: RuntimeRep) (a :: TYPE r) m. Quote m => m Exp -> Code m a
unsafeSpliceCoerce :: forall a (m :: * -> *). Quote m => m Exp -> Code m a
unsafeSpliceCoerce = forall a (m :: * -> *). Quote m => m Exp -> Code m a
unsafeCodeCoerce
#elif MIN_VERSION_template_haskell(2,16,0)
unsafeSpliceCoerce :: forall (r :: RuntimeRep) (a :: TYPE r). Q Exp -> Q (TExp a)
unsafeSpliceCoerce = unsafeTExpCoerce
#elif MIN_VERSION_template_haskell(2,9,0)
unsafeSpliceCoerce :: forall a. Q Exp -> Q (TExp a)
unsafeSpliceCoerce = unsafeTExpCoerce
#endif