{-# LANGUAGE TemplateHaskell #-}
{-# LANGUAGE QuasiQuotes     #-}
module JsonToType.CodeGen.Generic(src) where

import Language.Haskell.TH
import Language.Haskell.TH.Quote

-- | Multiline source string
src :: QuasiQuoter
src = (String -> Q Exp)
-> (String -> Q Pat)
-> (String -> Q Type)
-> (String -> Q [Dec])
-> QuasiQuoter
QuasiQuoter (\String
src -> [|src|])
                  (String -> String -> Q Pat
forall a. HasCallStack => String -> a
error String
"Cannot use src as pattern")
                  (String -> String -> Q Type
forall a. HasCallStack => String -> a
error String
"Cannot use src as type"   )
                  (String -> String -> Q [Dec]
forall a. HasCallStack => String -> a
error String
"Cannot use src as dec"    )