Hoogle Search
Within LTS Haskell 24.38 (ghc-9.10.3)
Note that Stackage only displays results for the latest LTS and Nightly snapshot. Learn more.
splitForAllReqTyBinders :: Type -> ([ReqTyBinder], Type)ghc GHC.Core.Type Like splitForAllTyCoVars, but only splits ForAllTys with Required type variable binders. Furthermore, each returned tyvar is annotated with ().
splitForAllTyCoVar :: Type -> (TyCoVar, Type)ghc GHC.Core.Type Take a forall type apart, or panics if that is not possible.
splitForAllTyCoVar_maybe :: Type -> Maybe (TyCoVar, Type)ghc GHC.Core.Type Attempts to take a ForAllTy apart, returning the Var
splitForAllTyCoVars :: Type -> ([TyCoVar], Type)ghc GHC.Core.Type Take a ForAllTy apart, returning the list of tycovars and the result type. This always succeeds, even if it returns only an empty list. Note that the result type returned may have free variables that were bound by a forall.
splitForAllTyVar_maybe :: Type -> Maybe (TyVar, Type)ghc GHC.Core.Type Attempts to take a ForAllTy apart, but only if the binder is a TyVar
splitForAllTyVars :: Type -> ([TyVar], Type)ghc GHC.Core.Type Like splitForAllTyCoVars, but split only for tyvars. This always succeeds, even if it returns only an empty list. Note that the result type returned may have free variables that were bound by a forall.
tidyForAllTyBinder :: TidyEnv -> VarBndr TyCoVar vis -> (TidyEnv, VarBndr TyCoVar vis)ghc GHC.Core.Type No documentation available.
tidyForAllTyBinders :: TidyEnv -> [VarBndr TyCoVar vis] -> (TidyEnv, [VarBndr TyCoVar vis])ghc GHC.Core.Type No documentation available.
tyConForAllTyFlags :: TyCon -> [Type] -> [ForAllTyFlag]ghc GHC.Core.Type Given a TyCon and a list of argument types to which the TyCon is applied, determine each argument's visibility (Inferred, Specified, or Required). Wrinkle: consider the following scenario:
T :: forall k. k -> k tyConForAllTyFlags T [forall m. m -> m -> m, S, R, Q]
After substituting, we getT (forall m. m -> m -> m) :: (forall m. m -> m -> m) -> forall n. n -> n -> n
Thus, the first argument is invisible, S is visible, R is invisible again, and Q is visible.exprOkForSpecEval :: (Id -> Bool) -> CoreExpr -> Boolghc GHC.Core.Utils A special version of exprOkForSpeculation used during Note [Speculative evaluation]. When the predicate arg fun_ok returns False for b, then b is never considered ok-for-spec.