<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <!--Rendered using the Haskell Html Library v0.2--> <HTML ><HEAD ><META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=UTF-8" ><TITLE >CoreUtils</TITLE ><LINK HREF="haddock.css" REL="stylesheet" TYPE="text/css" ><SCRIPT SRC="haddock-util.js" TYPE="text/javascript" ></SCRIPT ></HEAD ><BODY ><DIV CLASS="outer" ><DIV CLASS="mini-topbar" >CoreUtils</DIV ><DIV CLASS="mini-synopsis" ><H1 >Constructing expressions </H1 > <DIV CLASS="decl" ><A HREF="CoreUtils.html#v%3AmkInlineMe" TARGET="main" >mkInlineMe</A ></DIV > <DIV CLASS="decl" ><A HREF="CoreUtils.html#v%3AmkSCC" TARGET="main" >mkSCC</A ></DIV > <DIV CLASS="decl" ><A HREF="CoreUtils.html#v%3AmkCoerce" TARGET="main" >mkCoerce</A ></DIV > <DIV CLASS="decl" ><A HREF="CoreUtils.html#v%3AmkCoerceI" TARGET="main" >mkCoerceI</A ></DIV > <DIV CLASS="decl" ><A HREF="CoreUtils.html#v%3AbindNonRec" TARGET="main" >bindNonRec</A ></DIV > <DIV CLASS="decl" ><A HREF="CoreUtils.html#v%3AneedsCaseBinding" TARGET="main" >needsCaseBinding</A ></DIV > <DIV CLASS="decl" ><A HREF="CoreUtils.html#v%3AmkAltExpr" TARGET="main" >mkAltExpr</A ></DIV > <DIV CLASS="decl" ><A HREF="CoreUtils.html#v%3AmkPiType" TARGET="main" >mkPiType</A ></DIV > <DIV CLASS="decl" ><A HREF="CoreUtils.html#v%3AmkPiTypes" TARGET="main" >mkPiTypes</A ></DIV > <H1 >Taking expressions apart </H1 > <DIV CLASS="decl" ><A HREF="CoreUtils.html#v%3AfindDefault" TARGET="main" >findDefault</A ></DIV > <DIV CLASS="decl" ><A HREF="CoreUtils.html#v%3AfindAlt" TARGET="main" >findAlt</A ></DIV > <DIV CLASS="decl" ><A HREF="CoreUtils.html#v%3AisDefaultAlt" TARGET="main" >isDefaultAlt</A ></DIV > <DIV CLASS="decl" ><A HREF="CoreUtils.html#v%3AmergeAlts" TARGET="main" >mergeAlts</A ></DIV > <DIV CLASS="decl" ><A HREF="CoreUtils.html#v%3AtrimConArgs" TARGET="main" >trimConArgs</A ></DIV > <H1 >Properties of expressions </H1 > <DIV CLASS="decl" ><A HREF="CoreUtils.html#v%3AexprType" TARGET="main" >exprType</A ></DIV > <DIV CLASS="decl" ><A HREF="CoreUtils.html#v%3AcoreAltType" TARGET="main" >coreAltType</A ></DIV > <DIV CLASS="decl" ><A HREF="CoreUtils.html#v%3AcoreAltsType" TARGET="main" >coreAltsType</A ></DIV > <DIV CLASS="decl" ><A HREF="CoreUtils.html#v%3AexprIsDupable" TARGET="main" >exprIsDupable</A ></DIV > <DIV CLASS="decl" ><A HREF="CoreUtils.html#v%3AexprIsTrivial" TARGET="main" >exprIsTrivial</A ></DIV > <DIV CLASS="decl" ><A HREF="CoreUtils.html#v%3AexprIsCheap" TARGET="main" >exprIsCheap</A ></DIV > <DIV CLASS="decl" ><A HREF="CoreUtils.html#v%3AexprIsExpandable" TARGET="main" >exprIsExpandable</A ></DIV > <DIV CLASS="decl" ><A HREF="CoreUtils.html#v%3AexprIsHNF" TARGET="main" >exprIsHNF</A ></DIV > <DIV CLASS="decl" ><A HREF="CoreUtils.html#v%3AexprOkForSpeculation" TARGET="main" >exprOkForSpeculation</A ></DIV > <DIV CLASS="decl" ><A HREF="CoreUtils.html#v%3AexprIsBig" TARGET="main" >exprIsBig</A ></DIV > <DIV CLASS="decl" ><A HREF="CoreUtils.html#v%3AexprIsConApp_maybe" TARGET="main" >exprIsConApp_maybe</A ></DIV > <DIV CLASS="decl" ><A HREF="CoreUtils.html#v%3AexprIsBottom" TARGET="main" >exprIsBottom</A ></DIV > <DIV CLASS="decl" ><A HREF="CoreUtils.html#v%3ArhsIsStatic" TARGET="main" >rhsIsStatic</A ></DIV > <H1 >Expression and bindings size </H1 > <DIV CLASS="decl" ><A HREF="CoreUtils.html#v%3AcoreBindsSize" TARGET="main" >coreBindsSize</A ></DIV > <DIV CLASS="decl" ><A HREF="CoreUtils.html#v%3AexprSize" TARGET="main" >exprSize</A ></DIV > <H1 >Hashing </H1 > <DIV CLASS="decl" ><A HREF="CoreUtils.html#v%3AhashExpr" TARGET="main" >hashExpr</A ></DIV > <H1 >Equality </H1 > <DIV CLASS="decl" ><A HREF="CoreUtils.html#v%3AcheapEqExpr" TARGET="main" >cheapEqExpr</A ></DIV > <H1 >Manipulating data constructors and types </H1 > <DIV CLASS="decl" ><A HREF="CoreUtils.html#v%3AapplyTypeToArgs" TARGET="main" >applyTypeToArgs</A ></DIV > <DIV CLASS="decl" ><A HREF="CoreUtils.html#v%3AapplyTypeToArg" TARGET="main" >applyTypeToArg</A ></DIV > <DIV CLASS="decl" ><A HREF="CoreUtils.html#v%3AdataConOrigInstPat" TARGET="main" >dataConOrigInstPat</A ></DIV > <DIV CLASS="decl" ><A HREF="CoreUtils.html#v%3AdataConRepInstPat" TARGET="main" >dataConRepInstPat</A ></DIV > <DIV CLASS="decl" ><A HREF="CoreUtils.html#v%3AdataConRepFSInstPat" TARGET="main" >dataConRepFSInstPat</A ></DIV ></DIV ></DIV ></BODY ></HTML >