type-structure-0.1.0: src/TypeStructure/Prelude/TH.hs
module TypeStructure.Prelude.TH
(
module Exports,
purify,
tryToReify,
isProperInstance',
)
where
import TypeStructure.Prelude.Basic
import Language.Haskell.TH as Exports
import THInstanceReification as Exports
purify :: Q a -> a
purify = unsafePerformIO . runQ
tryToReify :: Name -> Q (Maybe Info)
tryToReify n = recover (return Nothing) (fmap Just $ reify n)
isProperInstance' :: Name -> [Type] -> Q Bool
isProperInstance' name types = recover (return False) (isProperInstance name types)