W3cubDocs

/Haskell 7

Language.Haskell.TH.Quote

Safe Haskell None
Language Haskell2010

data QuasiQuoter Source

Constructors

QuasiQuoter

Fields

quoteExp :: String -> Q Exp
quotePat :: String -> Q Pat
quoteType :: String -> Q Type
quoteDec :: String -> Q [Dec]

dataToQa :: forall a k q. Data a => (Name -> k) -> (Lit -> Q q) -> (k -> [Q q] -> Q q) -> (forall b. Data b => b -> Maybe (Q q)) -> a -> Q q Source

dataToExpQ :: Data a => (forall b. Data b => b -> Maybe (Q Exp)) -> a -> Q Exp Source

dataToExpQ converts a value to a 'Q Exp' representation of the same value. It takes a function to handle type-specific cases.

dataToPatQ :: Data a => (forall b. Data b => b -> Maybe (Q Pat)) -> a -> Q Pat Source

dataToPatQ converts a value to a 'Q Pat' representation of the same value. It takes a function to handle type-specific cases.

quoteFile :: QuasiQuoter -> QuasiQuoter Source

quoteFile takes a QuasiQuoter and lifts it into one that read the data out of a file. For example, suppose asmq is an assembly-language quoter, so that you can write [asmq| ld r1, r2 |] as an expression. Then if you define asmq_f = quoteFile asmq, then the quote [asmq_f|foo.s|] will take input from file "foo.s" instead of the inline text

© The University of Glasgow and others
Licensed under a BSD-style license (see top of the page).
https://downloads.haskell.org/~ghc/7.10.3/docs/html/libraries/template-haskell-2.10.0.0/Language-Haskell-TH-Quote.html