module Language.Haskell.TH.Compat.TyVarBndr.Current ( plainTVspecified, unTyVarBndr, ) where import Language.Haskell.TH (Name, TyVarBndr (..), Specificity (SpecifiedSpec)) plainTVspecified :: Name -> TyVarBndr Specificity plainTVspecified :: Name -> TyVarBndr Specificity plainTVspecified Name n = forall flag. Name -> flag -> TyVarBndr flag PlainTV Name n Specificity SpecifiedSpec unTyVarBndr :: TyVarBndr a -> (Name, Maybe a) unTyVarBndr :: forall a. TyVarBndr a -> (Name, Maybe a) unTyVarBndr (PlainTV Name n a f) = (Name n, forall a. a -> Maybe a Just a f) unTyVarBndr (KindedTV Name n a f Kind _k) = (Name n, forall a. a -> Maybe a Just a f)