packages feed

singletons-2.5: tests/compile-and-dump/Singletons/T342.hs

module T342 where

import Data.Singletons.TH
import Language.Haskell.TH
import Language.Haskell.TH.Desugar

$(do synName <- newName "MyId"
     a       <- newName "a"
     let syn = TySynD synName [PlainTV a] (VarT a)
     defuns <- withLocalDeclarations [syn] $
               genDefunSymbols [synName]
     pure $ syn:defuns)