{-# LANGUAGE PackageImports #-}
module Text.InterpolatedString.QM (qm, qn, qmb, qnb, qms, qns, ShowQ (..)) where
import "template-haskell" Language.Haskell.TH.Quote (QuasiQuoter (QuasiQuoter))
import Text.InterpolatedString.QM.ShowQ.Class (ShowQ (..))
import qualified Text.InterpolatedString.QM.Internal.Parsers as Parsers
qm :: QuasiQuoter
qm :: QuasiQuoter
qm = (String -> Q Exp)
-> (String -> Q Pat)
-> (String -> Q Type)
-> (String -> Q [Dec])
-> QuasiQuoter
QuasiQuoter String -> Q Exp
Parsers.qm
(String -> String -> Q Pat
forall a. HasCallStack => String -> a
error String
"Cannot use 'qm' as a pattern")
(String -> String -> Q Type
forall a. HasCallStack => String -> a
error String
"Cannot use 'qm' as a type")
(String -> String -> Q [Dec]
forall a. HasCallStack => String -> a
error String
"Cannot use 'qm' as a dec")
qn :: QuasiQuoter
qn :: QuasiQuoter
qn = (String -> Q Exp)
-> (String -> Q Pat)
-> (String -> Q Type)
-> (String -> Q [Dec])
-> QuasiQuoter
QuasiQuoter String -> Q Exp
Parsers.qn
(String -> String -> Q Pat
forall a. HasCallStack => String -> a
error String
"Cannot use 'qn' as a pattern")
(String -> String -> Q Type
forall a. HasCallStack => String -> a
error String
"Cannot use 'qn' as a type")
(String -> String -> Q [Dec]
forall a. HasCallStack => String -> a
error String
"Cannot use 'qn' as a dec")
qmb :: QuasiQuoter
qmb :: QuasiQuoter
qmb = (String -> Q Exp)
-> (String -> Q Pat)
-> (String -> Q Type)
-> (String -> Q [Dec])
-> QuasiQuoter
QuasiQuoter String -> Q Exp
Parsers.qmb
(String -> String -> Q Pat
forall a. HasCallStack => String -> a
error String
"Cannot use 'qmb' as a pattern")
(String -> String -> Q Type
forall a. HasCallStack => String -> a
error String
"Cannot use 'qmb' as a type")
(String -> String -> Q [Dec]
forall a. HasCallStack => String -> a
error String
"Cannot use 'qmb' as a dec")
qnb :: QuasiQuoter
qnb :: QuasiQuoter
qnb = (String -> Q Exp)
-> (String -> Q Pat)
-> (String -> Q Type)
-> (String -> Q [Dec])
-> QuasiQuoter
QuasiQuoter String -> Q Exp
Parsers.qnb
(String -> String -> Q Pat
forall a. HasCallStack => String -> a
error String
"Cannot use 'qnb' as a pattern")
(String -> String -> Q Type
forall a. HasCallStack => String -> a
error String
"Cannot use 'qnb' as a type")
(String -> String -> Q [Dec]
forall a. HasCallStack => String -> a
error String
"Cannot use 'qnb' as a dec")
qms :: QuasiQuoter
qms :: QuasiQuoter
qms = (String -> Q Exp)
-> (String -> Q Pat)
-> (String -> Q Type)
-> (String -> Q [Dec])
-> QuasiQuoter
QuasiQuoter String -> Q Exp
Parsers.qms
(String -> String -> Q Pat
forall a. HasCallStack => String -> a
error String
"Cannot use 'qms' as a pattern")
(String -> String -> Q Type
forall a. HasCallStack => String -> a
error String
"Cannot use 'qms' as a type")
(String -> String -> Q [Dec]
forall a. HasCallStack => String -> a
error String
"Cannot use 'qms' as a dec")
qns :: QuasiQuoter
qns :: QuasiQuoter
qns = (String -> Q Exp)
-> (String -> Q Pat)
-> (String -> Q Type)
-> (String -> Q [Dec])
-> QuasiQuoter
QuasiQuoter String -> Q Exp
Parsers.qns
(String -> String -> Q Pat
forall a. HasCallStack => String -> a
error String
"Cannot use 'qns' as a pattern")
(String -> String -> Q Type
forall a. HasCallStack => String -> a
error String
"Cannot use 'qns' as a type")
(String -> String -> Q [Dec]
forall a. HasCallStack => String -> a
error String
"Cannot use 'qns' as a dec")