|
|
|
Description |
Utility functions for constructing Core syntax, principally for desugaring
|
|
|
Documentation |
|
data EquationInfo |
Constructors | | Instances | |
|
|
firstPat :: EquationInfo -> Pat Id |
|
shiftEqns :: [EquationInfo] -> [EquationInfo] |
|
data MatchResult |
|
|
data CanItFail |
|
|
cantFailMatchResult :: CoreExpr -> MatchResult |
|
alwaysFailMatchResult :: MatchResult |
|
extractMatchResult :: MatchResult -> CoreExpr -> DsM CoreExpr |
|
combineMatchResults :: MatchResult -> MatchResult -> MatchResult |
|
adjustMatchResult :: DsWrapper -> MatchResult -> MatchResult |
|
adjustMatchResultDs :: (CoreExpr -> DsM CoreExpr) -> MatchResult -> MatchResult |
|
mkCoLetMatchResult :: CoreBind -> MatchResult -> MatchResult |
|
mkViewMatchResult :: Id -> CoreExpr -> Id -> MatchResult -> MatchResult |
|
mkGuardedMatchResult :: CoreExpr -> MatchResult -> MatchResult |
|
matchCanFail :: MatchResult -> Bool |
|
mkEvalMatchResult :: Id -> Type -> MatchResult -> MatchResult |
|
mkCoPrimCaseMatchResult :: Id -> Type -> [(Literal, MatchResult)] -> MatchResult |
|
mkCoAlgCaseMatchResult :: Id -> Type -> [(DataCon, [CoreBndr], MatchResult)] -> MatchResult |
|
wrapBind :: Var -> Var -> CoreExpr -> CoreExpr |
|
wrapBinds :: [(Var, Var)] -> CoreExpr -> CoreExpr |
|
mkErrorAppDs :: Id -> Type -> String -> DsM CoreExpr |
|
seqVar :: Var -> CoreExpr -> CoreExpr |
|
mkLHsVarTup :: [Id] -> LHsExpr Id |
|
mkLHsTup :: [LHsExpr Id] -> LHsExpr Id |
|
mkLHsVarPatTup :: [Id] -> LPat Id |
|
mkLHsPatTup :: [LPat Id] -> LPat Id |
|
mkBigLHsVarTup :: [Id] -> LHsExpr Id |
|
mkBigLHsTup :: [LHsExpr Id] -> LHsExpr Id |
|
mkBigLHsVarPatTup :: [Id] -> LPat Id |
|
mkBigLHsPatTup :: [LPat Id] -> LPat Id |
|
mkSelectorBinds :: LPat Id -> CoreExpr -> DsM [(Id, CoreExpr)] |
|
dsSyntaxTable :: SyntaxTable Id -> DsM ([CoreBind], [(Name, Id)]) |
|
lookupEvidence :: [(Name, Id)] -> Name -> Id |
|
selectSimpleMatchVarL :: LPat Id -> DsM Id |
|
selectMatchVars :: [Pat Id] -> DsM [Id] |
|
selectMatchVar :: Pat Id -> DsM Id |
|
mkTickBox :: Int -> [Id] -> CoreExpr -> DsM CoreExpr |
|
mkOptTickBox :: Maybe (Int, [Id]) -> CoreExpr -> DsM CoreExpr |
|
mkBinaryTickBox :: Int -> Int -> CoreExpr -> DsM CoreExpr |
|
Produced by Haddock version 2.3.0 |