Hoogle Search
Within LTS Haskell 24.32 (ghc-9.10.3)
Note that Stackage only displays results for the latest LTS and Nightly snapshot. Learn more.
splitTyConApp_maybe :: HasDebugCallStack => Type -> Maybe (TyCon, [Type])ghc GHC.Core.Type Attempts to tease a type apart into a type constructor and the application of a number of arguments to that constructor
tcSplitAppTyNoView_maybe :: Type -> Maybe (Type, Type)ghc GHC.Core.Type Just like splitAppTyNoView_maybe, but does not split (c => t) See Note [Decomposing fat arrow c=>t]
tcSplitTyConApp_maybe :: HasCallStack => Type -> Maybe (TyCon, [Type])ghc GHC.Core.Type tcSplitTyConApp_maybe splits a type constructor application into its type constructor and applied types. Differs from splitTyConApp_maybe in that it does *not* split types headed with (=>), as that's not a TyCon in the type-checker. Note that this may fail (in funTyConAppTy_maybe) in the case of a FunTy with an argument of unknown kind FunTy (e.g. `FunTy (a :: k) Int`, since the kind of a isn't of the form `TYPE rep`. This isn't usually a problem but may be temporarily the case during canonicalization: see Note [Decomposing FunTy] in GHC.Tc.Solver.Equality and Note [The Purely Kinded Type Invariant (PKTI)] in GHC.Tc.Gen.HsType, Wrinkle around FunTy Consequently, you may need to zonk your type before using this function.
tyConAppArgs_maybe :: Type -> Maybe [Type]ghc GHC.Core.Type The same as snd . splitTyConApp
tyConAppFunCo_maybe :: HasDebugCallStack => Role -> TyCon -> [Coercion] -> Maybe Coercionghc GHC.Core.Type Return Just if this TyConAppCo should be represented as a FunCo
tyConAppFunTy_maybe :: HasDebugCallStack => TyCon -> [Type] -> Maybe Typeghc GHC.Core.Type Return Just if this TyConApp should be represented as a FunTy
tyConAppTyConPicky_maybe :: Type -> Maybe TyConghc GHC.Core.Type Retrieve the tycon heading this type, if there is one. Does not look through synonyms.
tyConAppTyCon_maybe :: Type -> Maybe TyConghc GHC.Core.Type The same as fst . splitTyConApp We can short-cut the FunTy case
typeLevity_maybe :: HasDebugCallStack => Type -> Maybe Levityghc GHC.Core.Type Tries to compute the Levity of the given type. Returns either a definite Levity, or Nothing if we aren't sure (e.g. the type is representation-polymorphic). Panics if the kind does not have the shape TYPE r.
userTypeError_maybe :: Type -> Maybe ErrorMsgTypeghc GHC.Core.Type Is this type a custom user error? If so, give us the error message.