ghc-8.2.2: The GHC API

Safe HaskellNone
LanguageHaskell2010

RnTypes

Synopsis

Documentation

collectAnonWildCards :: LHsType Name -> [Name] #

Extract all wild cards from a type.

mkNegAppRn :: LHsExpr id -> SyntaxExpr id -> RnM (HsExpr id) #

bindLRdrNames :: [Located RdrName] -> ([Name] -> RnM (a, FreeVars)) -> RnM (a, FreeVars) #

Simply bring a bunch of RdrNames into scope. No checking for validity, at all. The binding location is taken from the location on each name.

extractFilteredRdrTyVars :: LHsType RdrName -> RnM FreeKiTyVars #

Finds free type and kind variables in a type, without duplicates, and without variables that are already in scope in LocalRdrEnv NB: this includes named wildcards, which look like perfectly ordinary type variables at this point

extractHsTysRdrTyVars :: [LHsType RdrName] -> RnM FreeKiTyVars #

Extracts free type and kind variables from types in a list. When the same name occurs multiple times in the types, only the first occurrence is returned and the rest is filtered out. See Note [Kind and type-variable binders]

extractHsTysRdrTyVarsDups :: [LHsType RdrName] -> RnM FreeKiTyVars #

Extracts free type and kind variables from types in a list. When the same name occurs multiple times in the types, all occurrences are returned.

rmDupsInRdrTyVars :: FreeKiTyVars -> FreeKiTyVars #

Removes multiple occurrences of the same name from FreeKiTyVars.

freeKiTyVarsAllVars :: FreeKiTyVars -> [Located RdrName] #

freeKiTyVarsKindVars :: FreeKiTyVars -> [Located RdrName] #

freeKiTyVarsTypeVars :: FreeKiTyVars -> [Located RdrName] #