11 lines
360 B
Haskell
11 lines
360 B
Haskell
{-# LANGUAGE Safe #-} -- does template haskell, but no IO inside it
|
|
module Test.Tasty.TH (moduleName) where
|
|
|
|
import Language.Haskell.TH.Lib (thisModule)
|
|
import Language.Haskell.TH.Syntax (Q, Exp(LitE), ModName(ModName), Lit(StringL), Module (Module))
|
|
|
|
moduleName :: Q Exp
|
|
moduleName = do
|
|
Module _ (ModName name) <- thisModule
|
|
pure . LitE . StringL $ name
|
|
|