<!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 >HsExpr</TITLE ><LINK HREF="haddock.css" REL="stylesheet" TYPE="text/css" ><SCRIPT SRC="haddock-util.js" TYPE="text/javascript" ></SCRIPT ><SCRIPT TYPE="text/javascript" >window.onload = function () {setSynopsis("mini_HsExpr.html")};</SCRIPT ></HEAD ><BODY ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="topbar" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD ><IMG SRC="haskell_icon.gif" WIDTH="16" HEIGHT="16" ALT=" " ></TD ><TD CLASS="title" >ghc-6.12.3: The GHC API</TD ><TD CLASS="topbut" ><A HREF="src/HsExpr.html" >Source code</A ></TD ><TD CLASS="topbut" ><A HREF="index.html" >Contents</A ></TD ><TD CLASS="topbut" ><A HREF="doc-index.html" >Index</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="modulebar" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD ><FONT SIZE="6" >HsExpr</FONT ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="section4" ><B >Contents</B ></TD ></TR ><TR ><TD ><DL ><DT ><A HREF="#1" >Expressions proper </A ></DT ></DL ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="section1" >Description</TD ></TR ><TR ><TD CLASS="doc" >Abstract Haskell syntax for expressions. </TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="section1" >Synopsis</TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >type</SPAN > <A HREF="#t%3ALHsExpr" >LHsExpr</A > id = <A HREF="SrcLoc.html#t%3ALocated" >Located</A > (<A HREF="HsExpr.html#t%3AHsExpr" >HsExpr</A > id)</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >type</SPAN > <A HREF="#t%3APostTcExpr" >PostTcExpr</A > = <A HREF="HsExpr.html#t%3AHsExpr" >HsExpr</A > <A HREF="Var.html#t%3AId" >Id</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >type</SPAN > <A HREF="#t%3APostTcTable" >PostTcTable</A > = [(<A HREF="Name.html#t%3AName" >Name</A >, <A HREF="Var.html#t%3AId" >Id</A >)]</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AnoPostTcExpr" >noPostTcExpr</A > :: <A HREF="HsExpr.html#t%3APostTcExpr" >PostTcExpr</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AnoPostTcTable" >noPostTcTable</A > :: <A HREF="HsExpr.html#t%3APostTcTable" >PostTcTable</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >type</SPAN > <A HREF="#t%3ASyntaxExpr" >SyntaxExpr</A > id = <A HREF="HsExpr.html#t%3AHsExpr" >HsExpr</A > id</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AnoSyntaxExpr" >noSyntaxExpr</A > :: <A HREF="HsExpr.html#t%3ASyntaxExpr" >SyntaxExpr</A > id</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >type</SPAN > <A HREF="#t%3ASyntaxTable" >SyntaxTable</A > id = [(<A HREF="Name.html#t%3AName" >Name</A >, <A HREF="HsExpr.html#t%3ASyntaxExpr" >SyntaxExpr</A > id)]</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AnoSyntaxTable" >noSyntaxTable</A > :: <A HREF="HsExpr.html#t%3ASyntaxTable" >SyntaxTable</A > id</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >data</SPAN > <A HREF="#t%3AHsExpr" >HsExpr</A > id </TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="decl" >= <A HREF="#v%3AHsVar" >HsVar</A > id</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AHsIPVar" >HsIPVar</A > (<A HREF="BasicTypes.html#t%3AIPName" >IPName</A > id)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AHsOverLit" >HsOverLit</A > (<A HREF="HsLit.html#t%3AHsOverLit" >HsOverLit</A > id)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AHsLit" >HsLit</A > <A HREF="HsLit.html#t%3AHsLit" >HsLit</A ></TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AHsLam" >HsLam</A > (<A HREF="HsExpr.html#t%3AMatchGroup" >MatchGroup</A > id)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AHsApp" >HsApp</A > (<A HREF="HsExpr.html#t%3ALHsExpr" >LHsExpr</A > id) (<A HREF="HsExpr.html#t%3ALHsExpr" >LHsExpr</A > id)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AOpApp" >OpApp</A > (<A HREF="HsExpr.html#t%3ALHsExpr" >LHsExpr</A > id) (<A HREF="HsExpr.html#t%3ALHsExpr" >LHsExpr</A > id) <A HREF="BasicTypes.html#t%3AFixity" >Fixity</A > (<A HREF="HsExpr.html#t%3ALHsExpr" >LHsExpr</A > id)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3ANegApp" >NegApp</A > (<A HREF="HsExpr.html#t%3ALHsExpr" >LHsExpr</A > id) (<A HREF="HsExpr.html#t%3ASyntaxExpr" >SyntaxExpr</A > id)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AHsPar" >HsPar</A > (<A HREF="HsExpr.html#t%3ALHsExpr" >LHsExpr</A > id)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3ASectionL" >SectionL</A > (<A HREF="HsExpr.html#t%3ALHsExpr" >LHsExpr</A > id) (<A HREF="HsExpr.html#t%3ALHsExpr" >LHsExpr</A > id)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3ASectionR" >SectionR</A > (<A HREF="HsExpr.html#t%3ALHsExpr" >LHsExpr</A > id) (<A HREF="HsExpr.html#t%3ALHsExpr" >LHsExpr</A > id)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AExplicitTuple" >ExplicitTuple</A > [<A HREF="HsExpr.html#t%3AHsTupArg" >HsTupArg</A > id] <A HREF="BasicTypes.html#t%3ABoxity" >Boxity</A ></TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AHsCase" >HsCase</A > (<A HREF="HsExpr.html#t%3ALHsExpr" >LHsExpr</A > id) (<A HREF="HsExpr.html#t%3AMatchGroup" >MatchGroup</A > id)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AHsIf" >HsIf</A > (<A HREF="HsExpr.html#t%3ALHsExpr" >LHsExpr</A > id) (<A HREF="HsExpr.html#t%3ALHsExpr" >LHsExpr</A > id) (<A HREF="HsExpr.html#t%3ALHsExpr" >LHsExpr</A > id)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AHsLet" >HsLet</A > (<A HREF="HsBinds.html#t%3AHsLocalBinds" >HsLocalBinds</A > id) (<A HREF="HsExpr.html#t%3ALHsExpr" >LHsExpr</A > id)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AHsDo" >HsDo</A > (<A HREF="HsExpr.html#t%3AHsStmtContext" >HsStmtContext</A > <A HREF="Name.html#t%3AName" >Name</A >) [<A HREF="HsExpr.html#t%3ALStmt" >LStmt</A > id] (<A HREF="HsExpr.html#t%3ALHsExpr" >LHsExpr</A > id) <A HREF="HsTypes.html#t%3APostTcType" >PostTcType</A ></TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AExplicitList" >ExplicitList</A > <A HREF="HsTypes.html#t%3APostTcType" >PostTcType</A > [<A HREF="HsExpr.html#t%3ALHsExpr" >LHsExpr</A > id]</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AExplicitPArr" >ExplicitPArr</A > <A HREF="HsTypes.html#t%3APostTcType" >PostTcType</A > [<A HREF="HsExpr.html#t%3ALHsExpr" >LHsExpr</A > id]</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3ARecordCon" >RecordCon</A > (<A HREF="SrcLoc.html#t%3ALocated" >Located</A > id) <A HREF="HsExpr.html#t%3APostTcExpr" >PostTcExpr</A > (<A HREF="HsExpr.html#t%3AHsRecordBinds" >HsRecordBinds</A > id)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3ARecordUpd" >RecordUpd</A > (<A HREF="HsExpr.html#t%3ALHsExpr" >LHsExpr</A > id) (<A HREF="HsExpr.html#t%3AHsRecordBinds" >HsRecordBinds</A > id) [<A HREF="DataCon.html#t%3ADataCon" >DataCon</A >] [<A HREF="HsTypes.html#t%3APostTcType" >PostTcType</A >] [<A HREF="HsTypes.html#t%3APostTcType" >PostTcType</A >]</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AExprWithTySig" >ExprWithTySig</A > (<A HREF="HsExpr.html#t%3ALHsExpr" >LHsExpr</A > id) (<A HREF="HsTypes.html#t%3ALHsType" >LHsType</A > id)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AExprWithTySigOut" >ExprWithTySigOut</A > (<A HREF="HsExpr.html#t%3ALHsExpr" >LHsExpr</A > id) (<A HREF="HsTypes.html#t%3ALHsType" >LHsType</A > <A HREF="Name.html#t%3AName" >Name</A >)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AArithSeq" >ArithSeq</A > <A HREF="HsExpr.html#t%3APostTcExpr" >PostTcExpr</A > (<A HREF="HsExpr.html#t%3AArithSeqInfo" >ArithSeqInfo</A > id)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3APArrSeq" >PArrSeq</A > <A HREF="HsExpr.html#t%3APostTcExpr" >PostTcExpr</A > (<A HREF="HsExpr.html#t%3AArithSeqInfo" >ArithSeqInfo</A > id)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AHsSCC" >HsSCC</A > <A HREF="FastString.html#t%3AFastString" >FastString</A > (<A HREF="HsExpr.html#t%3ALHsExpr" >LHsExpr</A > id)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AHsCoreAnn" >HsCoreAnn</A > <A HREF="FastString.html#t%3AFastString" >FastString</A > (<A HREF="HsExpr.html#t%3ALHsExpr" >LHsExpr</A > id)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AHsBracket" >HsBracket</A > (<A HREF="HsExpr.html#t%3AHsBracket" >HsBracket</A > id)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AHsBracketOut" >HsBracketOut</A > (<A HREF="HsExpr.html#t%3AHsBracket" >HsBracket</A > <A HREF="Name.html#t%3AName" >Name</A >) [<A HREF="HsExpr.html#t%3APendingSplice" >PendingSplice</A >]</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AHsSpliceE" >HsSpliceE</A > (<A HREF="HsExpr.html#t%3AHsSplice" >HsSplice</A > id)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AHsQuasiQuoteE" >HsQuasiQuoteE</A > (<A HREF="HsPat.html#t%3AHsQuasiQuote" >HsQuasiQuote</A > id)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AHsProc" >HsProc</A > (<A HREF="HsPat.html#t%3ALPat" >LPat</A > id) (<A HREF="HsExpr.html#t%3ALHsCmdTop" >LHsCmdTop</A > id)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AHsArrApp" >HsArrApp</A > (<A HREF="HsExpr.html#t%3ALHsExpr" >LHsExpr</A > id) (<A HREF="HsExpr.html#t%3ALHsExpr" >LHsExpr</A > id) <A HREF="HsTypes.html#t%3APostTcType" >PostTcType</A > <A HREF="HsExpr.html#t%3AHsArrAppType" >HsArrAppType</A > <A HREF="../base-4.2.0.2/Data-Bool.html#t%3ABool" >Bool</A ></TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AHsArrForm" >HsArrForm</A > (<A HREF="HsExpr.html#t%3ALHsExpr" >LHsExpr</A > id) (<A HREF="../base-4.2.0.2/Data-Maybe.html#t%3AMaybe" >Maybe</A > <A HREF="BasicTypes.html#t%3AFixity" >Fixity</A >) [<A HREF="HsExpr.html#t%3ALHsCmdTop" >LHsCmdTop</A > id]</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AHsTick" >HsTick</A > <A HREF="../base-4.2.0.2/Data-Int.html#t%3AInt" >Int</A > [id] (<A HREF="HsExpr.html#t%3ALHsExpr" >LHsExpr</A > id)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AHsBinTick" >HsBinTick</A > <A HREF="../base-4.2.0.2/Data-Int.html#t%3AInt" >Int</A > <A HREF="../base-4.2.0.2/Data-Int.html#t%3AInt" >Int</A > (<A HREF="HsExpr.html#t%3ALHsExpr" >LHsExpr</A > id)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AHsTickPragma" >HsTickPragma</A > (<A HREF="FastString.html#t%3AFastString" >FastString</A >, (<A HREF="../base-4.2.0.2/Data-Int.html#t%3AInt" >Int</A >, <A HREF="../base-4.2.0.2/Data-Int.html#t%3AInt" >Int</A >), (<A HREF="../base-4.2.0.2/Data-Int.html#t%3AInt" >Int</A >, <A HREF="../base-4.2.0.2/Data-Int.html#t%3AInt" >Int</A >)) (<A HREF="HsExpr.html#t%3ALHsExpr" >LHsExpr</A > id)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AEWildPat" >EWildPat</A ></TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AEAsPat" >EAsPat</A > (<A HREF="SrcLoc.html#t%3ALocated" >Located</A > id) (<A HREF="HsExpr.html#t%3ALHsExpr" >LHsExpr</A > id)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AEViewPat" >EViewPat</A > (<A HREF="HsExpr.html#t%3ALHsExpr" >LHsExpr</A > id) (<A HREF="HsExpr.html#t%3ALHsExpr" >LHsExpr</A > id)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AELazyPat" >ELazyPat</A > (<A HREF="HsExpr.html#t%3ALHsExpr" >LHsExpr</A > id)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AHsType" >HsType</A > (<A HREF="HsTypes.html#t%3ALHsType" >LHsType</A > id)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AHsWrap" >HsWrap</A > <A HREF="HsBinds.html#t%3AHsWrapper" >HsWrapper</A > (<A HREF="HsExpr.html#t%3AHsExpr" >HsExpr</A > id)</TD ></TR ></TABLE ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >data</SPAN > <A HREF="#t%3AHsTupArg" >HsTupArg</A > id </TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="decl" >= <A HREF="#v%3APresent" >Present</A > (<A HREF="HsExpr.html#t%3ALHsExpr" >LHsExpr</A > id)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AMissing" >Missing</A > <A HREF="HsTypes.html#t%3APostTcType" >PostTcType</A ></TD ></TR ></TABLE ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AtupArgPresent" >tupArgPresent</A > :: <A HREF="HsExpr.html#t%3AHsTupArg" >HsTupArg</A > id -> <A HREF="../base-4.2.0.2/Data-Bool.html#t%3ABool" >Bool</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >type</SPAN > <A HREF="#t%3APendingSplice" >PendingSplice</A > = (<A HREF="Name.html#t%3AName" >Name</A >, <A HREF="HsExpr.html#t%3ALHsExpr" >LHsExpr</A > <A HREF="Var.html#t%3AId" >Id</A >)</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3ApprLExpr" >pprLExpr</A > :: <A HREF="Outputable.html#t%3AOutputableBndr" >OutputableBndr</A > id => <A HREF="HsExpr.html#t%3ALHsExpr" >LHsExpr</A > id -> <A HREF="Outputable.html#t%3ASDoc" >SDoc</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3ApprExpr" >pprExpr</A > :: <A HREF="Outputable.html#t%3AOutputableBndr" >OutputableBndr</A > id => <A HREF="HsExpr.html#t%3AHsExpr" >HsExpr</A > id -> <A HREF="Outputable.html#t%3ASDoc" >SDoc</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AisQuietHsExpr" >isQuietHsExpr</A > :: <A HREF="HsExpr.html#t%3AHsExpr" >HsExpr</A > id -> <A HREF="../base-4.2.0.2/Data-Bool.html#t%3ABool" >Bool</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3ApprBinds" >pprBinds</A > :: (<A HREF="Outputable.html#t%3AOutputableBndr" >OutputableBndr</A > idL, <A HREF="Outputable.html#t%3AOutputableBndr" >OutputableBndr</A > idR) => <A HREF="HsBinds.html#t%3AHsLocalBindsLR" >HsLocalBindsLR</A > idL idR -> <A HREF="Outputable.html#t%3ASDoc" >SDoc</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3Appr_lexpr" >ppr_lexpr</A > :: <A HREF="Outputable.html#t%3AOutputableBndr" >OutputableBndr</A > id => <A HREF="HsExpr.html#t%3ALHsExpr" >LHsExpr</A > id -> <A HREF="Outputable.html#t%3ASDoc" >SDoc</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3Appr_expr" >ppr_expr</A > :: <A HREF="Outputable.html#t%3AOutputableBndr" >OutputableBndr</A > id => <A HREF="HsExpr.html#t%3AHsExpr" >HsExpr</A > id -> <A HREF="Outputable.html#t%3ASDoc" >SDoc</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3ApprCmdArg" >pprCmdArg</A > :: <A HREF="Outputable.html#t%3AOutputableBndr" >OutputableBndr</A > id => <A HREF="HsExpr.html#t%3AHsCmdTop" >HsCmdTop</A > id -> <A HREF="Outputable.html#t%3ASDoc" >SDoc</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3Apa_brackets" >pa_brackets</A > :: <A HREF="Outputable.html#t%3ASDoc" >SDoc</A > -> <A HREF="Outputable.html#t%3ASDoc" >SDoc</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3ApprDebugParendExpr" >pprDebugParendExpr</A > :: <A HREF="Outputable.html#t%3AOutputableBndr" >OutputableBndr</A > id => <A HREF="HsExpr.html#t%3ALHsExpr" >LHsExpr</A > id -> <A HREF="Outputable.html#t%3ASDoc" >SDoc</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3ApprParendExpr" >pprParendExpr</A > :: <A HREF="Outputable.html#t%3AOutputableBndr" >OutputableBndr</A > id => <A HREF="HsExpr.html#t%3ALHsExpr" >LHsExpr</A > id -> <A HREF="Outputable.html#t%3ASDoc" >SDoc</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AisAtomicHsExpr" >isAtomicHsExpr</A > :: <A HREF="HsExpr.html#t%3AHsExpr" >HsExpr</A > id -> <A HREF="../base-4.2.0.2/Data-Bool.html#t%3ABool" >Bool</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >type</SPAN > <A HREF="#t%3AHsCmd" >HsCmd</A > id = <A HREF="HsExpr.html#t%3AHsExpr" >HsExpr</A > id</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >type</SPAN > <A HREF="#t%3ALHsCmd" >LHsCmd</A > id = <A HREF="HsExpr.html#t%3ALHsExpr" >LHsExpr</A > id</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >data</SPAN > <A HREF="#t%3AHsArrAppType" >HsArrAppType</A > </TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="decl" >= <A HREF="#v%3AHsHigherOrderApp" >HsHigherOrderApp</A ></TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AHsFirstOrderApp" >HsFirstOrderApp</A ></TD ></TR ></TABLE ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >type</SPAN > <A HREF="#t%3ALHsCmdTop" >LHsCmdTop</A > id = <A HREF="SrcLoc.html#t%3ALocated" >Located</A > (<A HREF="HsExpr.html#t%3AHsCmdTop" >HsCmdTop</A > id)</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >data</SPAN > <A HREF="#t%3AHsCmdTop" >HsCmdTop</A > id = <A HREF="#v%3AHsCmdTop" >HsCmdTop</A > (<A HREF="HsExpr.html#t%3ALHsCmd" >LHsCmd</A > id) [<A HREF="HsTypes.html#t%3APostTcType" >PostTcType</A >] <A HREF="HsTypes.html#t%3APostTcType" >PostTcType</A > (<A HREF="HsExpr.html#t%3ASyntaxTable" >SyntaxTable</A > id)</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >type</SPAN > <A HREF="#t%3AHsRecordBinds" >HsRecordBinds</A > id = <A HREF="HsPat.html#t%3AHsRecFields" >HsRecFields</A > id (<A HREF="HsExpr.html#t%3ALHsExpr" >LHsExpr</A > id)</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >data</SPAN > <A HREF="#t%3AMatchGroup" >MatchGroup</A > id = <A HREF="#v%3AMatchGroup" >MatchGroup</A > [<A HREF="HsExpr.html#t%3ALMatch" >LMatch</A > id] <A HREF="HsTypes.html#t%3APostTcType" >PostTcType</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >type</SPAN > <A HREF="#t%3ALMatch" >LMatch</A > id = <A HREF="SrcLoc.html#t%3ALocated" >Located</A > (<A HREF="HsExpr.html#t%3AMatch" >Match</A > id)</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >data</SPAN > <A HREF="#t%3AMatch" >Match</A > id = <A HREF="#v%3AMatch" >Match</A > [<A HREF="HsPat.html#t%3ALPat" >LPat</A > id] (<A HREF="../base-4.2.0.2/Data-Maybe.html#t%3AMaybe" >Maybe</A > (<A HREF="HsTypes.html#t%3ALHsType" >LHsType</A > id)) (<A HREF="HsExpr.html#t%3AGRHSs" >GRHSs</A > id)</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AisEmptyMatchGroup" >isEmptyMatchGroup</A > :: <A HREF="HsExpr.html#t%3AMatchGroup" >MatchGroup</A > id -> <A HREF="../base-4.2.0.2/Data-Bool.html#t%3ABool" >Bool</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AmatchGroupArity" >matchGroupArity</A > :: <A HREF="HsExpr.html#t%3AMatchGroup" >MatchGroup</A > id -> <A HREF="BasicTypes.html#t%3AArity" >Arity</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AhsLMatchPats" >hsLMatchPats</A > :: <A HREF="HsExpr.html#t%3ALMatch" >LMatch</A > id -> [<A HREF="HsPat.html#t%3ALPat" >LPat</A > id]</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >data</SPAN > <A HREF="#t%3AGRHSs" >GRHSs</A > id = <A HREF="#v%3AGRHSs" >GRHSs</A > {<TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="recfield" ><A HREF="#v%3AgrhssGRHSs" >grhssGRHSs</A > :: [<A HREF="HsExpr.html#t%3ALGRHS" >LGRHS</A > id]</TD ></TR ><TR ><TD CLASS="recfield" ><A HREF="#v%3AgrhssLocalBinds" >grhssLocalBinds</A > :: <A HREF="HsBinds.html#t%3AHsLocalBinds" >HsLocalBinds</A > id</TD ></TR ></TABLE >}</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >type</SPAN > <A HREF="#t%3ALGRHS" >LGRHS</A > id = <A HREF="SrcLoc.html#t%3ALocated" >Located</A > (<A HREF="HsExpr.html#t%3AGRHS" >GRHS</A > id)</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >data</SPAN > <A HREF="#t%3AGRHS" >GRHS</A > id = <A HREF="#v%3AGRHS" >GRHS</A > [<A HREF="HsExpr.html#t%3ALStmt" >LStmt</A > id] (<A HREF="HsExpr.html#t%3ALHsExpr" >LHsExpr</A > id)</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3ApprMatches" >pprMatches</A > :: (<A HREF="Outputable.html#t%3AOutputableBndr" >OutputableBndr</A > idL, <A HREF="Outputable.html#t%3AOutputableBndr" >OutputableBndr</A > idR) => <A HREF="HsExpr.html#t%3AHsMatchContext" >HsMatchContext</A > idL -> <A HREF="HsExpr.html#t%3AMatchGroup" >MatchGroup</A > idR -> <A HREF="Outputable.html#t%3ASDoc" >SDoc</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3ApprFunBind" >pprFunBind</A > :: (<A HREF="Outputable.html#t%3AOutputableBndr" >OutputableBndr</A > idL, <A HREF="Outputable.html#t%3AOutputableBndr" >OutputableBndr</A > idR) => idL -> <A HREF="../base-4.2.0.2/Data-Bool.html#t%3ABool" >Bool</A > -> <A HREF="HsExpr.html#t%3AMatchGroup" >MatchGroup</A > idR -> <A HREF="Outputable.html#t%3ASDoc" >SDoc</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3ApprPatBind" >pprPatBind</A > :: (<A HREF="Outputable.html#t%3AOutputableBndr" >OutputableBndr</A > bndr, <A HREF="Outputable.html#t%3AOutputableBndr" >OutputableBndr</A > id) => <A HREF="HsPat.html#t%3ALPat" >LPat</A > bndr -> <A HREF="HsExpr.html#t%3AGRHSs" >GRHSs</A > id -> <A HREF="Outputable.html#t%3ASDoc" >SDoc</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3ApprMatch" >pprMatch</A > :: (<A HREF="Outputable.html#t%3AOutputableBndr" >OutputableBndr</A > idL, <A HREF="Outputable.html#t%3AOutputableBndr" >OutputableBndr</A > idR) => <A HREF="HsExpr.html#t%3AHsMatchContext" >HsMatchContext</A > idL -> <A HREF="HsExpr.html#t%3AMatch" >Match</A > idR -> <A HREF="Outputable.html#t%3ASDoc" >SDoc</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3ApprGRHSs" >pprGRHSs</A > :: (<A HREF="Outputable.html#t%3AOutputableBndr" >OutputableBndr</A > idL, <A HREF="Outputable.html#t%3AOutputableBndr" >OutputableBndr</A > idR) => <A HREF="HsExpr.html#t%3AHsMatchContext" >HsMatchContext</A > idL -> <A HREF="HsExpr.html#t%3AGRHSs" >GRHSs</A > idR -> <A HREF="Outputable.html#t%3ASDoc" >SDoc</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3ApprGRHS" >pprGRHS</A > :: (<A HREF="Outputable.html#t%3AOutputableBndr" >OutputableBndr</A > idL, <A HREF="Outputable.html#t%3AOutputableBndr" >OutputableBndr</A > idR) => <A HREF="HsExpr.html#t%3AHsMatchContext" >HsMatchContext</A > idL -> <A HREF="HsExpr.html#t%3AGRHS" >GRHS</A > idR -> <A HREF="Outputable.html#t%3ASDoc" >SDoc</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3App_rhs" >pp_rhs</A > :: <A HREF="Outputable.html#t%3AOutputableBndr" >OutputableBndr</A > idR => <A HREF="HsExpr.html#t%3AHsMatchContext" >HsMatchContext</A > idL -> <A HREF="HsExpr.html#t%3ALHsExpr" >LHsExpr</A > idR -> <A HREF="Outputable.html#t%3ASDoc" >SDoc</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >type</SPAN > <A HREF="#t%3ALStmt" >LStmt</A > id = <A HREF="SrcLoc.html#t%3ALocated" >Located</A > (<A HREF="HsExpr.html#t%3AStmtLR" >StmtLR</A > id id)</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >type</SPAN > <A HREF="#t%3ALStmtLR" >LStmtLR</A > idL idR = <A HREF="SrcLoc.html#t%3ALocated" >Located</A > (<A HREF="HsExpr.html#t%3AStmtLR" >StmtLR</A > idL idR)</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >type</SPAN > <A HREF="#t%3AStmt" >Stmt</A > id = <A HREF="HsExpr.html#t%3AStmtLR" >StmtLR</A > id id</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >data</SPAN > <A HREF="#t%3AGroupByClause" >GroupByClause</A > id </TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="decl" >= <A HREF="#v%3AGroupByNothing" >GroupByNothing</A > (<A HREF="HsExpr.html#t%3ALHsExpr" >LHsExpr</A > id)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AGroupBySomething" >GroupBySomething</A > (<A HREF="../base-4.2.0.2/Data-Either.html#t%3AEither" >Either</A > (<A HREF="HsExpr.html#t%3ALHsExpr" >LHsExpr</A > id) (<A HREF="HsExpr.html#t%3ASyntaxExpr" >SyntaxExpr</A > id)) (<A HREF="HsExpr.html#t%3ALHsExpr" >LHsExpr</A > id)</TD ></TR ></TABLE ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >data</SPAN > <A HREF="#t%3AStmtLR" >StmtLR</A > idL idR </TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="decl" >= <A HREF="#v%3ABindStmt" >BindStmt</A > (<A HREF="HsPat.html#t%3ALPat" >LPat</A > idL) (<A HREF="HsExpr.html#t%3ALHsExpr" >LHsExpr</A > idR) (<A HREF="HsExpr.html#t%3ASyntaxExpr" >SyntaxExpr</A > idR) (<A HREF="HsExpr.html#t%3ASyntaxExpr" >SyntaxExpr</A > idR)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AExprStmt" >ExprStmt</A > (<A HREF="HsExpr.html#t%3ALHsExpr" >LHsExpr</A > idR) (<A HREF="HsExpr.html#t%3ASyntaxExpr" >SyntaxExpr</A > idR) <A HREF="HsTypes.html#t%3APostTcType" >PostTcType</A ></TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3ALetStmt" >LetStmt</A > (<A HREF="HsBinds.html#t%3AHsLocalBindsLR" >HsLocalBindsLR</A > idL idR)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AParStmt" >ParStmt</A > [([<A HREF="HsExpr.html#t%3ALStmt" >LStmt</A > idL], [idR])]</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3ATransformStmt" >TransformStmt</A > ([<A HREF="HsExpr.html#t%3ALStmt" >LStmt</A > idL], [idR]) (<A HREF="HsExpr.html#t%3ALHsExpr" >LHsExpr</A > idR) (<A HREF="../base-4.2.0.2/Data-Maybe.html#t%3AMaybe" >Maybe</A > (<A HREF="HsExpr.html#t%3ALHsExpr" >LHsExpr</A > idR))</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AGroupStmt" >GroupStmt</A > ([<A HREF="HsExpr.html#t%3ALStmt" >LStmt</A > idL], [(idR, idR)]) (<A HREF="HsExpr.html#t%3AGroupByClause" >GroupByClause</A > idR)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3ARecStmt" >RecStmt</A > {<TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="recfield" ><A HREF="#v%3ArecS_stmts" >recS_stmts</A > :: [<A HREF="HsExpr.html#t%3ALStmtLR" >LStmtLR</A > idL idR]</TD ></TR ><TR ><TD CLASS="recfield" ><A HREF="#v%3ArecS_later_ids" >recS_later_ids</A > :: [idR]</TD ></TR ><TR ><TD CLASS="recfield" ><A HREF="#v%3ArecS_rec_ids" >recS_rec_ids</A > :: [idR]</TD ></TR ><TR ><TD CLASS="recfield" ><A HREF="#v%3ArecS_bind_fn" >recS_bind_fn</A > :: <A HREF="HsExpr.html#t%3ASyntaxExpr" >SyntaxExpr</A > idR</TD ></TR ><TR ><TD CLASS="recfield" ><A HREF="#v%3ArecS_ret_fn" >recS_ret_fn</A > :: <A HREF="HsExpr.html#t%3ASyntaxExpr" >SyntaxExpr</A > idR</TD ></TR ><TR ><TD CLASS="recfield" ><A HREF="#v%3ArecS_mfix_fn" >recS_mfix_fn</A > :: <A HREF="HsExpr.html#t%3ASyntaxExpr" >SyntaxExpr</A > idR</TD ></TR ><TR ><TD CLASS="recfield" ><A HREF="#v%3ArecS_rec_rets" >recS_rec_rets</A > :: [<A HREF="HsExpr.html#t%3APostTcExpr" >PostTcExpr</A >]</TD ></TR ><TR ><TD CLASS="recfield" ><A HREF="#v%3ArecS_dicts" >recS_dicts</A > :: <A HREF="HsBinds.html#t%3ADictBinds" >DictBinds</A > idR</TD ></TR ></TABLE >}</TD ></TR ></TABLE ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3ApprStmt" >pprStmt</A > :: (<A HREF="Outputable.html#t%3AOutputableBndr" >OutputableBndr</A > idL, <A HREF="Outputable.html#t%3AOutputableBndr" >OutputableBndr</A > idR) => <A HREF="HsExpr.html#t%3AStmtLR" >StmtLR</A > idL idR -> <A HREF="Outputable.html#t%3ASDoc" >SDoc</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3ApprGroupByClause" >pprGroupByClause</A > :: <A HREF="Outputable.html#t%3AOutputableBndr" >OutputableBndr</A > id => <A HREF="HsExpr.html#t%3AGroupByClause" >GroupByClause</A > id -> <A HREF="Outputable.html#t%3ASDoc" >SDoc</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3ApprDo" >pprDo</A > :: <A HREF="Outputable.html#t%3AOutputableBndr" >OutputableBndr</A > id => <A HREF="HsExpr.html#t%3AHsStmtContext" >HsStmtContext</A > any -> [<A HREF="HsExpr.html#t%3ALStmt" >LStmt</A > id] -> <A HREF="HsExpr.html#t%3ALHsExpr" >LHsExpr</A > id -> <A HREF="Outputable.html#t%3ASDoc" >SDoc</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3Appr_do_stmts" >ppr_do_stmts</A > :: <A HREF="Outputable.html#t%3AOutputableBndr" >OutputableBndr</A > id => [<A HREF="HsExpr.html#t%3ALStmt" >LStmt</A > id] -> <A HREF="HsExpr.html#t%3ALHsExpr" >LHsExpr</A > id -> <A HREF="Outputable.html#t%3ASDoc" >SDoc</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3ApprComp" >pprComp</A > :: <A HREF="Outputable.html#t%3AOutputableBndr" >OutputableBndr</A > id => (<A HREF="Outputable.html#t%3ASDoc" >SDoc</A > -> <A HREF="Outputable.html#t%3ASDoc" >SDoc</A >) -> [<A HREF="HsExpr.html#t%3ALStmt" >LStmt</A > id] -> <A HREF="HsExpr.html#t%3ALHsExpr" >LHsExpr</A > id -> <A HREF="Outputable.html#t%3ASDoc" >SDoc</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >data</SPAN > <A HREF="#t%3AHsSplice" >HsSplice</A > id = <A HREF="#v%3AHsSplice" >HsSplice</A > id (<A HREF="HsExpr.html#t%3ALHsExpr" >LHsExpr</A > id)</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3ApprSplice" >pprSplice</A > :: <A HREF="Outputable.html#t%3AOutputableBndr" >OutputableBndr</A > id => <A HREF="HsExpr.html#t%3AHsSplice" >HsSplice</A > id -> <A HREF="Outputable.html#t%3ASDoc" >SDoc</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >data</SPAN > <A HREF="#t%3AHsBracket" >HsBracket</A > id </TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="decl" >= <A HREF="#v%3AExpBr" >ExpBr</A > (<A HREF="HsExpr.html#t%3ALHsExpr" >LHsExpr</A > id)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3APatBr" >PatBr</A > (<A HREF="HsPat.html#t%3ALPat" >LPat</A > id)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3ADecBr" >DecBr</A > (<A HREF="HsDecls.html#t%3AHsGroup" >HsGroup</A > id)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3ATypBr" >TypBr</A > (<A HREF="HsTypes.html#t%3ALHsType" >LHsType</A > id)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AVarBr" >VarBr</A > id</TD ></TR ></TABLE ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3ApprHsBracket" >pprHsBracket</A > :: <A HREF="Outputable.html#t%3AOutputableBndr" >OutputableBndr</A > id => <A HREF="HsExpr.html#t%3AHsBracket" >HsBracket</A > id -> <A HREF="Outputable.html#t%3ASDoc" >SDoc</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AthBrackets" >thBrackets</A > :: <A HREF="Outputable.html#t%3ASDoc" >SDoc</A > -> <A HREF="Outputable.html#t%3ASDoc" >SDoc</A > -> <A HREF="Outputable.html#t%3ASDoc" >SDoc</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >data</SPAN > <A HREF="#t%3AArithSeqInfo" >ArithSeqInfo</A > id </TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="decl" >= <A HREF="#v%3AFrom" >From</A > (<A HREF="HsExpr.html#t%3ALHsExpr" >LHsExpr</A > id)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AFromThen" >FromThen</A > (<A HREF="HsExpr.html#t%3ALHsExpr" >LHsExpr</A > id) (<A HREF="HsExpr.html#t%3ALHsExpr" >LHsExpr</A > id)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AFromTo" >FromTo</A > (<A HREF="HsExpr.html#t%3ALHsExpr" >LHsExpr</A > id) (<A HREF="HsExpr.html#t%3ALHsExpr" >LHsExpr</A > id)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AFromThenTo" >FromThenTo</A > (<A HREF="HsExpr.html#t%3ALHsExpr" >LHsExpr</A > id) (<A HREF="HsExpr.html#t%3ALHsExpr" >LHsExpr</A > id) (<A HREF="HsExpr.html#t%3ALHsExpr" >LHsExpr</A > id)</TD ></TR ></TABLE ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3App_dotdot" >pp_dotdot</A > :: <A HREF="Outputable.html#t%3ASDoc" >SDoc</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >data</SPAN > <A HREF="#t%3AHsMatchContext" >HsMatchContext</A > id </TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="decl" >= <A HREF="#v%3AFunRhs" >FunRhs</A > id <A HREF="../base-4.2.0.2/Data-Bool.html#t%3ABool" >Bool</A ></TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3ACaseAlt" >CaseAlt</A ></TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3ALambdaExpr" >LambdaExpr</A ></TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AProcExpr" >ProcExpr</A ></TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3APatBindRhs" >PatBindRhs</A ></TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3ARecUpd" >RecUpd</A ></TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AStmtCtxt" >StmtCtxt</A > (<A HREF="HsExpr.html#t%3AHsStmtContext" >HsStmtContext</A > id)</TD ></TR ></TABLE ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >data</SPAN > <A HREF="#t%3AHsStmtContext" >HsStmtContext</A > id </TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="decl" >= <A HREF="#v%3AListComp" >ListComp</A ></TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3ADoExpr" >DoExpr</A ></TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AGhciStmt" >GhciStmt</A ></TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AMDoExpr" >MDoExpr</A > <A HREF="HsExpr.html#t%3APostTcTable" >PostTcTable</A ></TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3APArrComp" >PArrComp</A ></TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3APatGuard" >PatGuard</A > (<A HREF="HsExpr.html#t%3AHsMatchContext" >HsMatchContext</A > id)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AParStmtCtxt" >ParStmtCtxt</A > (<A HREF="HsExpr.html#t%3AHsStmtContext" >HsStmtContext</A > id)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3ATransformStmtCtxt" >TransformStmtCtxt</A > (<A HREF="HsExpr.html#t%3AHsStmtContext" >HsStmtContext</A > id)</TD ></TR ></TABLE ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AisDoExpr" >isDoExpr</A > :: <A HREF="HsExpr.html#t%3AHsStmtContext" >HsStmtContext</A > id -> <A HREF="../base-4.2.0.2/Data-Bool.html#t%3ABool" >Bool</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AisListCompExpr" >isListCompExpr</A > :: <A HREF="HsExpr.html#t%3AHsStmtContext" >HsStmtContext</A > id -> <A HREF="../base-4.2.0.2/Data-Bool.html#t%3ABool" >Bool</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AmatchSeparator" >matchSeparator</A > :: <A HREF="HsExpr.html#t%3AHsMatchContext" >HsMatchContext</A > id -> <A HREF="Outputable.html#t%3ASDoc" >SDoc</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3ApprMatchContext" >pprMatchContext</A > :: <A HREF="Outputable.html#t%3AOutputable" >Outputable</A > id => <A HREF="HsExpr.html#t%3AHsMatchContext" >HsMatchContext</A > id -> <A HREF="Outputable.html#t%3ASDoc" >SDoc</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3ApprStmtContext" >pprStmtContext</A > :: <A HREF="Outputable.html#t%3AOutputable" >Outputable</A > id => <A HREF="HsExpr.html#t%3AHsStmtContext" >HsStmtContext</A > id -> <A HREF="Outputable.html#t%3ASDoc" >SDoc</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AmatchContextErrString" >matchContextErrString</A > :: <A HREF="Outputable.html#t%3AOutputable" >Outputable</A > id => <A HREF="HsExpr.html#t%3AHsMatchContext" >HsMatchContext</A > id -> <A HREF="Outputable.html#t%3ASDoc" >SDoc</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3ApprMatchInCtxt" >pprMatchInCtxt</A > :: (<A HREF="Outputable.html#t%3AOutputableBndr" >OutputableBndr</A > idL, <A HREF="Outputable.html#t%3AOutputableBndr" >OutputableBndr</A > idR) => <A HREF="HsExpr.html#t%3AHsMatchContext" >HsMatchContext</A > idL -> <A HREF="HsExpr.html#t%3AMatch" >Match</A > idR -> <A HREF="Outputable.html#t%3ASDoc" >SDoc</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3ApprStmtInCtxt" >pprStmtInCtxt</A > :: (<A HREF="Outputable.html#t%3AOutputableBndr" >OutputableBndr</A > idL, <A HREF="Outputable.html#t%3AOutputableBndr" >OutputableBndr</A > idR) => <A HREF="HsExpr.html#t%3AHsStmtContext" >HsStmtContext</A > idL -> <A HREF="HsExpr.html#t%3AStmtLR" >StmtLR</A > idL idR -> <A HREF="Outputable.html#t%3ASDoc" >SDoc</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="section1" ><A NAME="1" ><A NAME="1" >Expressions proper </A ></A ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><SPAN CLASS="keyword" >type</SPAN > <A NAME="t:LHsExpr" ><A NAME="t%3ALHsExpr" ></A ></A ><B >LHsExpr</B > id = <A HREF="SrcLoc.html#t%3ALocated" >Located</A > (<A HREF="HsExpr.html#t%3AHsExpr" >HsExpr</A > id)</TD ><TD CLASS="declbut" ><A HREF="src/HsExpr.html#LHsExpr" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><SPAN CLASS="keyword" >type</SPAN > <A NAME="t:PostTcExpr" ><A NAME="t%3APostTcExpr" ></A ></A ><B >PostTcExpr</B > = <A HREF="HsExpr.html#t%3AHsExpr" >HsExpr</A > <A HREF="Var.html#t%3AId" >Id</A ></TD ><TD CLASS="declbut" ><A HREF="src/HsExpr.html#PostTcExpr" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="doc" >PostTcExpr is an evidence expression attached to the syntax tree by the type checker (c.f. postTcType). </TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><SPAN CLASS="keyword" >type</SPAN > <A NAME="t:PostTcTable" ><A NAME="t%3APostTcTable" ></A ></A ><B >PostTcTable</B > = [(<A HREF="Name.html#t%3AName" >Name</A >, <A HREF="Var.html#t%3AId" >Id</A >)]</TD ><TD CLASS="declbut" ><A HREF="src/HsExpr.html#PostTcTable" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="doc" >We use a PostTcTable where there are a bunch of pieces of evidence, more than is convenient to keep individually. </TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><A NAME="v:noPostTcExpr" ><A NAME="v%3AnoPostTcExpr" ></A ></A ><B >noPostTcExpr</B > :: <A HREF="HsExpr.html#t%3APostTcExpr" >PostTcExpr</A ></TD ><TD CLASS="declbut" ><A HREF="src/HsExpr.html#noPostTcExpr" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><A NAME="v:noPostTcTable" ><A NAME="v%3AnoPostTcTable" ></A ></A ><B >noPostTcTable</B > :: <A HREF="HsExpr.html#t%3APostTcTable" >PostTcTable</A ></TD ><TD CLASS="declbut" ><A HREF="src/HsExpr.html#noPostTcTable" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><SPAN CLASS="keyword" >type</SPAN > <A NAME="t:SyntaxExpr" ><A NAME="t%3ASyntaxExpr" ></A ></A ><B >SyntaxExpr</B > id = <A HREF="HsExpr.html#t%3AHsExpr" >HsExpr</A > id</TD ><TD CLASS="declbut" ><A HREF="src/HsExpr.html#SyntaxExpr" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="doc" ><P >SyntaxExpr is like <TT ><A HREF="HsExpr.html#t%3APostTcExpr" >PostTcExpr</A ></TT >, but it's filled in a little earlier, by the renamer. It's used for rebindable syntax. </P ><P >E.g. <TT >(>>=)</TT > is filled in before the renamer by the appropriate <TT ><A HREF="Name.html#t%3AName" >Name</A ></TT > for <TT >(>>=)</TT >, and then instantiated by the type checker with its type args tec </P ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><A NAME="v:noSyntaxExpr" ><A NAME="v%3AnoSyntaxExpr" ></A ></A ><B >noSyntaxExpr</B > :: <A HREF="HsExpr.html#t%3ASyntaxExpr" >SyntaxExpr</A > id</TD ><TD CLASS="declbut" ><A HREF="src/HsExpr.html#noSyntaxExpr" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><SPAN CLASS="keyword" >type</SPAN > <A NAME="t:SyntaxTable" ><A NAME="t%3ASyntaxTable" ></A ></A ><B >SyntaxTable</B > id = [(<A HREF="Name.html#t%3AName" >Name</A >, <A HREF="HsExpr.html#t%3ASyntaxExpr" >SyntaxExpr</A > id)]</TD ><TD CLASS="declbut" ><A HREF="src/HsExpr.html#SyntaxTable" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="doc" ><P >Currently used only for CmdTop (sigh) </P ><UL ><LI > Before the renamer, this list is <TT ><A HREF="HsExpr.html#v%3AnoSyntaxTable" >noSyntaxTable</A ></TT > </LI ><LI > After the renamer, it takes the form <TT >[(std_name, HsVar actual_name)]</TT > For example, for the <TT ><A HREF="../base-4.2.0.2/Control-Monad.html#v%3Areturn" >return</A ></TT > op of a monad </LI ><LI > normal case: <TT >(GHC.Base.return, HsVar GHC.Base.return)</TT > </LI ><LI > with rebindable syntax: <TT >(GHC.Base.return, return_22)</TT > where <TT >return_22</TT > is whatever <TT >return</TT > is in scope </LI ><LI > After the type checker, it takes the form <TT >[(std_name, <A HREF="expression" >expression</A >)]</TT > where <TT ><A HREF="expression" >expression</A ></TT > is the evidence for the method </LI ></UL ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><A NAME="v:noSyntaxTable" ><A NAME="v%3AnoSyntaxTable" ></A ></A ><B >noSyntaxTable</B > :: <A HREF="HsExpr.html#t%3ASyntaxTable" >SyntaxTable</A > id</TD ><TD CLASS="declbut" ><A HREF="src/HsExpr.html#noSyntaxTable" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><SPAN CLASS="keyword" >data</SPAN > <A NAME="t:HsExpr" ><A NAME="t%3AHsExpr" ></A ></A ><B >HsExpr</B > id </TD ><TD CLASS="declbut" ><A HREF="src/HsExpr.html#HsExpr" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="ndoc" >A Haskell expression. </TD ></TR ><TR ><TD CLASS="section4" >Constructors</TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0" ><TR ><TD CLASS="arg" ><A NAME="v:HsVar" ><A NAME="v%3AHsVar" ></A ></A ><B >HsVar</B > id</TD ><TD CLASS="rdoc" >variable </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:HsIPVar" ><A NAME="v%3AHsIPVar" ></A ></A ><B >HsIPVar</B > (<A HREF="BasicTypes.html#t%3AIPName" >IPName</A > id)</TD ><TD CLASS="rdoc" >implicit parameter </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:HsOverLit" ><A NAME="v%3AHsOverLit" ></A ></A ><B >HsOverLit</B > (<A HREF="HsLit.html#t%3AHsOverLit" >HsOverLit</A > id)</TD ><TD CLASS="rdoc" >Overloaded literals </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:HsLit" ><A NAME="v%3AHsLit" ></A ></A ><B >HsLit</B > <A HREF="HsLit.html#t%3AHsLit" >HsLit</A ></TD ><TD CLASS="rdoc" >Simple (non-overloaded) literals </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:HsLam" ><A NAME="v%3AHsLam" ></A ></A ><B >HsLam</B > (<A HREF="HsExpr.html#t%3AMatchGroup" >MatchGroup</A > id)</TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:HsApp" ><A NAME="v%3AHsApp" ></A ></A ><B >HsApp</B > (<A HREF="HsExpr.html#t%3ALHsExpr" >LHsExpr</A > id) (<A HREF="HsExpr.html#t%3ALHsExpr" >LHsExpr</A > id)</TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:OpApp" ><A NAME="v%3AOpApp" ></A ></A ><B >OpApp</B > (<A HREF="HsExpr.html#t%3ALHsExpr" >LHsExpr</A > id) (<A HREF="HsExpr.html#t%3ALHsExpr" >LHsExpr</A > id) <A HREF="BasicTypes.html#t%3AFixity" >Fixity</A > (<A HREF="HsExpr.html#t%3ALHsExpr" >LHsExpr</A > id)</TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:NegApp" ><A NAME="v%3ANegApp" ></A ></A ><B >NegApp</B > (<A HREF="HsExpr.html#t%3ALHsExpr" >LHsExpr</A > id) (<A HREF="HsExpr.html#t%3ASyntaxExpr" >SyntaxExpr</A > id)</TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:HsPar" ><A NAME="v%3AHsPar" ></A ></A ><B >HsPar</B > (<A HREF="HsExpr.html#t%3ALHsExpr" >LHsExpr</A > id)</TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:SectionL" ><A NAME="v%3ASectionL" ></A ></A ><B >SectionL</B > (<A HREF="HsExpr.html#t%3ALHsExpr" >LHsExpr</A > id) (<A HREF="HsExpr.html#t%3ALHsExpr" >LHsExpr</A > id)</TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:SectionR" ><A NAME="v%3ASectionR" ></A ></A ><B >SectionR</B > (<A HREF="HsExpr.html#t%3ALHsExpr" >LHsExpr</A > id) (<A HREF="HsExpr.html#t%3ALHsExpr" >LHsExpr</A > id)</TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:ExplicitTuple" ><A NAME="v%3AExplicitTuple" ></A ></A ><B >ExplicitTuple</B > [<A HREF="HsExpr.html#t%3AHsTupArg" >HsTupArg</A > id] <A HREF="BasicTypes.html#t%3ABoxity" >Boxity</A ></TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:HsCase" ><A NAME="v%3AHsCase" ></A ></A ><B >HsCase</B > (<A HREF="HsExpr.html#t%3ALHsExpr" >LHsExpr</A > id) (<A HREF="HsExpr.html#t%3AMatchGroup" >MatchGroup</A > id)</TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:HsIf" ><A NAME="v%3AHsIf" ></A ></A ><B >HsIf</B > (<A HREF="HsExpr.html#t%3ALHsExpr" >LHsExpr</A > id) (<A HREF="HsExpr.html#t%3ALHsExpr" >LHsExpr</A > id) (<A HREF="HsExpr.html#t%3ALHsExpr" >LHsExpr</A > id)</TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:HsLet" ><A NAME="v%3AHsLet" ></A ></A ><B >HsLet</B > (<A HREF="HsBinds.html#t%3AHsLocalBinds" >HsLocalBinds</A > id) (<A HREF="HsExpr.html#t%3ALHsExpr" >LHsExpr</A > id)</TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:HsDo" ><A NAME="v%3AHsDo" ></A ></A ><B >HsDo</B > (<A HREF="HsExpr.html#t%3AHsStmtContext" >HsStmtContext</A > <A HREF="Name.html#t%3AName" >Name</A >) [<A HREF="HsExpr.html#t%3ALStmt" >LStmt</A > id] (<A HREF="HsExpr.html#t%3ALHsExpr" >LHsExpr</A > id) <A HREF="HsTypes.html#t%3APostTcType" >PostTcType</A ></TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:ExplicitList" ><A NAME="v%3AExplicitList" ></A ></A ><B >ExplicitList</B > <A HREF="HsTypes.html#t%3APostTcType" >PostTcType</A > [<A HREF="HsExpr.html#t%3ALHsExpr" >LHsExpr</A > id]</TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:ExplicitPArr" ><A NAME="v%3AExplicitPArr" ></A ></A ><B >ExplicitPArr</B > <A HREF="HsTypes.html#t%3APostTcType" >PostTcType</A > [<A HREF="HsExpr.html#t%3ALHsExpr" >LHsExpr</A > id]</TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:RecordCon" ><A NAME="v%3ARecordCon" ></A ></A ><B >RecordCon</B > (<A HREF="SrcLoc.html#t%3ALocated" >Located</A > id) <A HREF="HsExpr.html#t%3APostTcExpr" >PostTcExpr</A > (<A HREF="HsExpr.html#t%3AHsRecordBinds" >HsRecordBinds</A > id)</TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:RecordUpd" ><A NAME="v%3ARecordUpd" ></A ></A ><B >RecordUpd</B > (<A HREF="HsExpr.html#t%3ALHsExpr" >LHsExpr</A > id) (<A HREF="HsExpr.html#t%3AHsRecordBinds" >HsRecordBinds</A > id) [<A HREF="DataCon.html#t%3ADataCon" >DataCon</A >] [<A HREF="HsTypes.html#t%3APostTcType" >PostTcType</A >] [<A HREF="HsTypes.html#t%3APostTcType" >PostTcType</A >]</TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:ExprWithTySig" ><A NAME="v%3AExprWithTySig" ></A ></A ><B >ExprWithTySig</B > (<A HREF="HsExpr.html#t%3ALHsExpr" >LHsExpr</A > id) (<A HREF="HsTypes.html#t%3ALHsType" >LHsType</A > id)</TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:ExprWithTySigOut" ><A NAME="v%3AExprWithTySigOut" ></A ></A ><B >ExprWithTySigOut</B > (<A HREF="HsExpr.html#t%3ALHsExpr" >LHsExpr</A > id) (<A HREF="HsTypes.html#t%3ALHsType" >LHsType</A > <A HREF="Name.html#t%3AName" >Name</A >)</TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:ArithSeq" ><A NAME="v%3AArithSeq" ></A ></A ><B >ArithSeq</B > <A HREF="HsExpr.html#t%3APostTcExpr" >PostTcExpr</A > (<A HREF="HsExpr.html#t%3AArithSeqInfo" >ArithSeqInfo</A > id)</TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:PArrSeq" ><A NAME="v%3APArrSeq" ></A ></A ><B >PArrSeq</B > <A HREF="HsExpr.html#t%3APostTcExpr" >PostTcExpr</A > (<A HREF="HsExpr.html#t%3AArithSeqInfo" >ArithSeqInfo</A > id)</TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:HsSCC" ><A NAME="v%3AHsSCC" ></A ></A ><B >HsSCC</B > <A HREF="FastString.html#t%3AFastString" >FastString</A > (<A HREF="HsExpr.html#t%3ALHsExpr" >LHsExpr</A > id)</TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:HsCoreAnn" ><A NAME="v%3AHsCoreAnn" ></A ></A ><B >HsCoreAnn</B > <A HREF="FastString.html#t%3AFastString" >FastString</A > (<A HREF="HsExpr.html#t%3ALHsExpr" >LHsExpr</A > id)</TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:HsBracket" ><A NAME="v%3AHsBracket" ></A ></A ><B >HsBracket</B > (<A HREF="HsExpr.html#t%3AHsBracket" >HsBracket</A > id)</TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:HsBracketOut" ><A NAME="v%3AHsBracketOut" ></A ></A ><B >HsBracketOut</B > (<A HREF="HsExpr.html#t%3AHsBracket" >HsBracket</A > <A HREF="Name.html#t%3AName" >Name</A >) [<A HREF="HsExpr.html#t%3APendingSplice" >PendingSplice</A >]</TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:HsSpliceE" ><A NAME="v%3AHsSpliceE" ></A ></A ><B >HsSpliceE</B > (<A HREF="HsExpr.html#t%3AHsSplice" >HsSplice</A > id)</TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:HsQuasiQuoteE" ><A NAME="v%3AHsQuasiQuoteE" ></A ></A ><B >HsQuasiQuoteE</B > (<A HREF="HsPat.html#t%3AHsQuasiQuote" >HsQuasiQuote</A > id)</TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:HsProc" ><A NAME="v%3AHsProc" ></A ></A ><B >HsProc</B > (<A HREF="HsPat.html#t%3ALPat" >LPat</A > id) (<A HREF="HsExpr.html#t%3ALHsCmdTop" >LHsCmdTop</A > id)</TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:HsArrApp" ><A NAME="v%3AHsArrApp" ></A ></A ><B >HsArrApp</B > (<A HREF="HsExpr.html#t%3ALHsExpr" >LHsExpr</A > id) (<A HREF="HsExpr.html#t%3ALHsExpr" >LHsExpr</A > id) <A HREF="HsTypes.html#t%3APostTcType" >PostTcType</A > <A HREF="HsExpr.html#t%3AHsArrAppType" >HsArrAppType</A > <A HREF="../base-4.2.0.2/Data-Bool.html#t%3ABool" >Bool</A ></TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:HsArrForm" ><A NAME="v%3AHsArrForm" ></A ></A ><B >HsArrForm</B > (<A HREF="HsExpr.html#t%3ALHsExpr" >LHsExpr</A > id) (<A HREF="../base-4.2.0.2/Data-Maybe.html#t%3AMaybe" >Maybe</A > <A HREF="BasicTypes.html#t%3AFixity" >Fixity</A >) [<A HREF="HsExpr.html#t%3ALHsCmdTop" >LHsCmdTop</A > id]</TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:HsTick" ><A NAME="v%3AHsTick" ></A ></A ><B >HsTick</B > <A HREF="../base-4.2.0.2/Data-Int.html#t%3AInt" >Int</A > [id] (<A HREF="HsExpr.html#t%3ALHsExpr" >LHsExpr</A > id)</TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:HsBinTick" ><A NAME="v%3AHsBinTick" ></A ></A ><B >HsBinTick</B > <A HREF="../base-4.2.0.2/Data-Int.html#t%3AInt" >Int</A > <A HREF="../base-4.2.0.2/Data-Int.html#t%3AInt" >Int</A > (<A HREF="HsExpr.html#t%3ALHsExpr" >LHsExpr</A > id)</TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:HsTickPragma" ><A NAME="v%3AHsTickPragma" ></A ></A ><B >HsTickPragma</B > (<A HREF="FastString.html#t%3AFastString" >FastString</A >, (<A HREF="../base-4.2.0.2/Data-Int.html#t%3AInt" >Int</A >, <A HREF="../base-4.2.0.2/Data-Int.html#t%3AInt" >Int</A >), (<A HREF="../base-4.2.0.2/Data-Int.html#t%3AInt" >Int</A >, <A HREF="../base-4.2.0.2/Data-Int.html#t%3AInt" >Int</A >)) (<A HREF="HsExpr.html#t%3ALHsExpr" >LHsExpr</A > id)</TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:EWildPat" ><A NAME="v%3AEWildPat" ></A ></A ><B >EWildPat</B ></TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:EAsPat" ><A NAME="v%3AEAsPat" ></A ></A ><B >EAsPat</B > (<A HREF="SrcLoc.html#t%3ALocated" >Located</A > id) (<A HREF="HsExpr.html#t%3ALHsExpr" >LHsExpr</A > id)</TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:EViewPat" ><A NAME="v%3AEViewPat" ></A ></A ><B >EViewPat</B > (<A HREF="HsExpr.html#t%3ALHsExpr" >LHsExpr</A > id) (<A HREF="HsExpr.html#t%3ALHsExpr" >LHsExpr</A > id)</TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:ELazyPat" ><A NAME="v%3AELazyPat" ></A ></A ><B >ELazyPat</B > (<A HREF="HsExpr.html#t%3ALHsExpr" >LHsExpr</A > id)</TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:HsType" ><A NAME="v%3AHsType" ></A ></A ><B >HsType</B > (<A HREF="HsTypes.html#t%3ALHsType" >LHsType</A > id)</TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:HsWrap" ><A NAME="v%3AHsWrap" ></A ></A ><B >HsWrap</B > <A HREF="HsBinds.html#t%3AHsWrapper" >HsWrapper</A > (<A HREF="HsExpr.html#t%3AHsExpr" >HsExpr</A > id)</TD ><TD CLASS="rdoc" ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="section4" ><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'i:HsExpr')" ALT="show/hide" > Instances</TD ></TR ><TR ><TD CLASS="body" ><DIV ID="i:HsExpr" STYLE="display:block;" ><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0" ><TR ><TD CLASS="decl" ><A HREF="Outputable.html#t%3AOutputableBndr" >OutputableBndr</A > id => <A HREF="Outputable.html#t%3AOutputable" >Outputable</A > (<A HREF="HsExpr.html#t%3AHsExpr" >HsExpr</A > id)</TD ></TR ></TABLE ></DIV ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><SPAN CLASS="keyword" >data</SPAN > <A NAME="t:HsTupArg" ><A NAME="t%3AHsTupArg" ></A ></A ><B >HsTupArg</B > id </TD ><TD CLASS="declbut" ><A HREF="src/HsExpr.html#HsTupArg" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="section4" >Constructors</TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0" ><TR ><TD CLASS="arg" ><A NAME="v:Present" ><A NAME="v%3APresent" ></A ></A ><B >Present</B > (<A HREF="HsExpr.html#t%3ALHsExpr" >LHsExpr</A > id)</TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:Missing" ><A NAME="v%3AMissing" ></A ></A ><B >Missing</B > <A HREF="HsTypes.html#t%3APostTcType" >PostTcType</A ></TD ><TD CLASS="rdoc" ></TD ></TR ></TABLE ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><A NAME="v:tupArgPresent" ><A NAME="v%3AtupArgPresent" ></A ></A ><B >tupArgPresent</B > :: <A HREF="HsExpr.html#t%3AHsTupArg" >HsTupArg</A > id -> <A HREF="../base-4.2.0.2/Data-Bool.html#t%3ABool" >Bool</A ></TD ><TD CLASS="declbut" ><A HREF="src/HsExpr.html#tupArgPresent" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><SPAN CLASS="keyword" >type</SPAN > <A NAME="t:PendingSplice" ><A NAME="t%3APendingSplice" ></A ></A ><B >PendingSplice</B > = (<A HREF="Name.html#t%3AName" >Name</A >, <A HREF="HsExpr.html#t%3ALHsExpr" >LHsExpr</A > <A HREF="Var.html#t%3AId" >Id</A >)</TD ><TD CLASS="declbut" ><A HREF="src/HsExpr.html#PendingSplice" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><A NAME="v:pprLExpr" ><A NAME="v%3ApprLExpr" ></A ></A ><B >pprLExpr</B > :: <A HREF="Outputable.html#t%3AOutputableBndr" >OutputableBndr</A > id => <A HREF="HsExpr.html#t%3ALHsExpr" >LHsExpr</A > id -> <A HREF="Outputable.html#t%3ASDoc" >SDoc</A ></TD ><TD CLASS="declbut" ><A HREF="src/HsExpr.html#pprLExpr" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><A NAME="v:pprExpr" ><A NAME="v%3ApprExpr" ></A ></A ><B >pprExpr</B > :: <A HREF="Outputable.html#t%3AOutputableBndr" >OutputableBndr</A > id => <A HREF="HsExpr.html#t%3AHsExpr" >HsExpr</A > id -> <A HREF="Outputable.html#t%3ASDoc" >SDoc</A ></TD ><TD CLASS="declbut" ><A HREF="src/HsExpr.html#pprExpr" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><A NAME="v:isQuietHsExpr" ><A NAME="v%3AisQuietHsExpr" ></A ></A ><B >isQuietHsExpr</B > :: <A HREF="HsExpr.html#t%3AHsExpr" >HsExpr</A > id -> <A HREF="../base-4.2.0.2/Data-Bool.html#t%3ABool" >Bool</A ></TD ><TD CLASS="declbut" ><A HREF="src/HsExpr.html#isQuietHsExpr" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><A NAME="v:pprBinds" ><A NAME="v%3ApprBinds" ></A ></A ><B >pprBinds</B > :: (<A HREF="Outputable.html#t%3AOutputableBndr" >OutputableBndr</A > idL, <A HREF="Outputable.html#t%3AOutputableBndr" >OutputableBndr</A > idR) => <A HREF="HsBinds.html#t%3AHsLocalBindsLR" >HsLocalBindsLR</A > idL idR -> <A HREF="Outputable.html#t%3ASDoc" >SDoc</A ></TD ><TD CLASS="declbut" ><A HREF="src/HsExpr.html#pprBinds" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><A NAME="v:ppr_lexpr" ><A NAME="v%3Appr_lexpr" ></A ></A ><B >ppr_lexpr</B > :: <A HREF="Outputable.html#t%3AOutputableBndr" >OutputableBndr</A > id => <A HREF="HsExpr.html#t%3ALHsExpr" >LHsExpr</A > id -> <A HREF="Outputable.html#t%3ASDoc" >SDoc</A ></TD ><TD CLASS="declbut" ><A HREF="src/HsExpr.html#ppr_lexpr" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><A NAME="v:ppr_expr" ><A NAME="v%3Appr_expr" ></A ></A ><B >ppr_expr</B > :: <A HREF="Outputable.html#t%3AOutputableBndr" >OutputableBndr</A > id => <A HREF="HsExpr.html#t%3AHsExpr" >HsExpr</A > id -> <A HREF="Outputable.html#t%3ASDoc" >SDoc</A ></TD ><TD CLASS="declbut" ><A HREF="src/HsExpr.html#ppr_expr" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><A NAME="v:pprCmdArg" ><A NAME="v%3ApprCmdArg" ></A ></A ><B >pprCmdArg</B > :: <A HREF="Outputable.html#t%3AOutputableBndr" >OutputableBndr</A > id => <A HREF="HsExpr.html#t%3AHsCmdTop" >HsCmdTop</A > id -> <A HREF="Outputable.html#t%3ASDoc" >SDoc</A ></TD ><TD CLASS="declbut" ><A HREF="src/HsExpr.html#pprCmdArg" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><A NAME="v:pa_brackets" ><A NAME="v%3Apa_brackets" ></A ></A ><B >pa_brackets</B > :: <A HREF="Outputable.html#t%3ASDoc" >SDoc</A > -> <A HREF="Outputable.html#t%3ASDoc" >SDoc</A ></TD ><TD CLASS="declbut" ><A HREF="src/HsExpr.html#pa_brackets" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><A NAME="v:pprDebugParendExpr" ><A NAME="v%3ApprDebugParendExpr" ></A ></A ><B >pprDebugParendExpr</B > :: <A HREF="Outputable.html#t%3AOutputableBndr" >OutputableBndr</A > id => <A HREF="HsExpr.html#t%3ALHsExpr" >LHsExpr</A > id -> <A HREF="Outputable.html#t%3ASDoc" >SDoc</A ></TD ><TD CLASS="declbut" ><A HREF="src/HsExpr.html#pprDebugParendExpr" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><A NAME="v:pprParendExpr" ><A NAME="v%3ApprParendExpr" ></A ></A ><B >pprParendExpr</B > :: <A HREF="Outputable.html#t%3AOutputableBndr" >OutputableBndr</A > id => <A HREF="HsExpr.html#t%3ALHsExpr" >LHsExpr</A > id -> <A HREF="Outputable.html#t%3ASDoc" >SDoc</A ></TD ><TD CLASS="declbut" ><A HREF="src/HsExpr.html#pprParendExpr" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><A NAME="v:isAtomicHsExpr" ><A NAME="v%3AisAtomicHsExpr" ></A ></A ><B >isAtomicHsExpr</B > :: <A HREF="HsExpr.html#t%3AHsExpr" >HsExpr</A > id -> <A HREF="../base-4.2.0.2/Data-Bool.html#t%3ABool" >Bool</A ></TD ><TD CLASS="declbut" ><A HREF="src/HsExpr.html#isAtomicHsExpr" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><SPAN CLASS="keyword" >type</SPAN > <A NAME="t:HsCmd" ><A NAME="t%3AHsCmd" ></A ></A ><B >HsCmd</B > id = <A HREF="HsExpr.html#t%3AHsExpr" >HsExpr</A > id</TD ><TD CLASS="declbut" ><A HREF="src/HsExpr.html#HsCmd" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><SPAN CLASS="keyword" >type</SPAN > <A NAME="t:LHsCmd" ><A NAME="t%3ALHsCmd" ></A ></A ><B >LHsCmd</B > id = <A HREF="HsExpr.html#t%3ALHsExpr" >LHsExpr</A > id</TD ><TD CLASS="declbut" ><A HREF="src/HsExpr.html#LHsCmd" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><SPAN CLASS="keyword" >data</SPAN > <A NAME="t:HsArrAppType" ><A NAME="t%3AHsArrAppType" ></A ></A ><B >HsArrAppType</B > </TD ><TD CLASS="declbut" ><A HREF="src/HsExpr.html#HsArrAppType" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="section4" >Constructors</TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0" ><TR ><TD CLASS="arg" ><A NAME="v:HsHigherOrderApp" ><A NAME="v%3AHsHigherOrderApp" ></A ></A ><B >HsHigherOrderApp</B ></TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:HsFirstOrderApp" ><A NAME="v%3AHsFirstOrderApp" ></A ></A ><B >HsFirstOrderApp</B ></TD ><TD CLASS="rdoc" ></TD ></TR ></TABLE ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><SPAN CLASS="keyword" >type</SPAN > <A NAME="t:LHsCmdTop" ><A NAME="t%3ALHsCmdTop" ></A ></A ><B >LHsCmdTop</B > id = <A HREF="SrcLoc.html#t%3ALocated" >Located</A > (<A HREF="HsExpr.html#t%3AHsCmdTop" >HsCmdTop</A > id)</TD ><TD CLASS="declbut" ><A HREF="src/HsExpr.html#LHsCmdTop" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><SPAN CLASS="keyword" >data</SPAN > <A NAME="t:HsCmdTop" ><A NAME="t%3AHsCmdTop" ></A ></A ><B >HsCmdTop</B > id </TD ><TD CLASS="declbut" ><A HREF="src/HsExpr.html#HsCmdTop" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="section4" >Constructors</TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0" ><TR ><TD CLASS="arg" ><A NAME="v:HsCmdTop" ><A NAME="v%3AHsCmdTop" ></A ></A ><B >HsCmdTop</B > (<A HREF="HsExpr.html#t%3ALHsCmd" >LHsCmd</A > id) [<A HREF="HsTypes.html#t%3APostTcType" >PostTcType</A >] <A HREF="HsTypes.html#t%3APostTcType" >PostTcType</A > (<A HREF="HsExpr.html#t%3ASyntaxTable" >SyntaxTable</A > id)</TD ><TD CLASS="rdoc" ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="section4" ><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'i:HsCmdTop')" ALT="show/hide" > Instances</TD ></TR ><TR ><TD CLASS="body" ><DIV ID="i:HsCmdTop" STYLE="display:block;" ><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0" ><TR ><TD CLASS="decl" ><A HREF="Outputable.html#t%3AOutputableBndr" >OutputableBndr</A > id => <A HREF="Outputable.html#t%3AOutputable" >Outputable</A > (<A HREF="HsExpr.html#t%3AHsCmdTop" >HsCmdTop</A > id)</TD ></TR ></TABLE ></DIV ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><SPAN CLASS="keyword" >type</SPAN > <A NAME="t:HsRecordBinds" ><A NAME="t%3AHsRecordBinds" ></A ></A ><B >HsRecordBinds</B > id = <A HREF="HsPat.html#t%3AHsRecFields" >HsRecFields</A > id (<A HREF="HsExpr.html#t%3ALHsExpr" >LHsExpr</A > id)</TD ><TD CLASS="declbut" ><A HREF="src/HsExpr.html#HsRecordBinds" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><SPAN CLASS="keyword" >data</SPAN > <A NAME="t:MatchGroup" ><A NAME="t%3AMatchGroup" ></A ></A ><B >MatchGroup</B > id </TD ><TD CLASS="declbut" ><A HREF="src/HsExpr.html#MatchGroup" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="section4" >Constructors</TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0" ><TR ><TD CLASS="arg" ><A NAME="v:MatchGroup" ><A NAME="v%3AMatchGroup" ></A ></A ><B >MatchGroup</B > [<A HREF="HsExpr.html#t%3ALMatch" >LMatch</A > id] <A HREF="HsTypes.html#t%3APostTcType" >PostTcType</A ></TD ><TD CLASS="rdoc" ></TD ></TR ></TABLE ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><SPAN CLASS="keyword" >type</SPAN > <A NAME="t:LMatch" ><A NAME="t%3ALMatch" ></A ></A ><B >LMatch</B > id = <A HREF="SrcLoc.html#t%3ALocated" >Located</A > (<A HREF="HsExpr.html#t%3AMatch" >Match</A > id)</TD ><TD CLASS="declbut" ><A HREF="src/HsExpr.html#LMatch" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><SPAN CLASS="keyword" >data</SPAN > <A NAME="t:Match" ><A NAME="t%3AMatch" ></A ></A ><B >Match</B > id </TD ><TD CLASS="declbut" ><A HREF="src/HsExpr.html#Match" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="section4" >Constructors</TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0" ><TR ><TD CLASS="arg" ><A NAME="v:Match" ><A NAME="v%3AMatch" ></A ></A ><B >Match</B > [<A HREF="HsPat.html#t%3ALPat" >LPat</A > id] (<A HREF="../base-4.2.0.2/Data-Maybe.html#t%3AMaybe" >Maybe</A > (<A HREF="HsTypes.html#t%3ALHsType" >LHsType</A > id)) (<A HREF="HsExpr.html#t%3AGRHSs" >GRHSs</A > id)</TD ><TD CLASS="rdoc" ></TD ></TR ></TABLE ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><A NAME="v:isEmptyMatchGroup" ><A NAME="v%3AisEmptyMatchGroup" ></A ></A ><B >isEmptyMatchGroup</B > :: <A HREF="HsExpr.html#t%3AMatchGroup" >MatchGroup</A > id -> <A HREF="../base-4.2.0.2/Data-Bool.html#t%3ABool" >Bool</A ></TD ><TD CLASS="declbut" ><A HREF="src/HsExpr.html#isEmptyMatchGroup" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><A NAME="v:matchGroupArity" ><A NAME="v%3AmatchGroupArity" ></A ></A ><B >matchGroupArity</B > :: <A HREF="HsExpr.html#t%3AMatchGroup" >MatchGroup</A > id -> <A HREF="BasicTypes.html#t%3AArity" >Arity</A ></TD ><TD CLASS="declbut" ><A HREF="src/HsExpr.html#matchGroupArity" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><A NAME="v:hsLMatchPats" ><A NAME="v%3AhsLMatchPats" ></A ></A ><B >hsLMatchPats</B > :: <A HREF="HsExpr.html#t%3ALMatch" >LMatch</A > id -> [<A HREF="HsPat.html#t%3ALPat" >LPat</A > id]</TD ><TD CLASS="declbut" ><A HREF="src/HsExpr.html#hsLMatchPats" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><SPAN CLASS="keyword" >data</SPAN > <A NAME="t:GRHSs" ><A NAME="t%3AGRHSs" ></A ></A ><B >GRHSs</B > id </TD ><TD CLASS="declbut" ><A HREF="src/HsExpr.html#GRHSs" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="ndoc" >GRHSs are used both for pattern bindings and for Matches </TD ></TR ><TR ><TD CLASS="section4" >Constructors</TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="5" CELLPADDING="0" ><TR ><TD CLASS="arg" ><A NAME="v:GRHSs" ><A NAME="v%3AGRHSs" ></A ></A ><B >GRHSs</B ></TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="body" COLSPAN="2" ><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0" ><TR ><TD CLASS="arg" ><A NAME="v:grhssGRHSs" ><A NAME="v%3AgrhssGRHSs" ></A ></A ><B >grhssGRHSs</B > :: [<A HREF="HsExpr.html#t%3ALGRHS" >LGRHS</A > id]</TD ><TD CLASS="rdoc" >Guarded RHSs </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:grhssLocalBinds" ><A NAME="v%3AgrhssLocalBinds" ></A ></A ><B >grhssLocalBinds</B > :: <A HREF="HsBinds.html#t%3AHsLocalBinds" >HsLocalBinds</A > id</TD ><TD CLASS="rdoc" >The where clause </TD ></TR ></TABLE ></TD ></TR ></TABLE ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><SPAN CLASS="keyword" >type</SPAN > <A NAME="t:LGRHS" ><A NAME="t%3ALGRHS" ></A ></A ><B >LGRHS</B > id = <A HREF="SrcLoc.html#t%3ALocated" >Located</A > (<A HREF="HsExpr.html#t%3AGRHS" >GRHS</A > id)</TD ><TD CLASS="declbut" ><A HREF="src/HsExpr.html#LGRHS" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><SPAN CLASS="keyword" >data</SPAN > <A NAME="t:GRHS" ><A NAME="t%3AGRHS" ></A ></A ><B >GRHS</B > id </TD ><TD CLASS="declbut" ><A HREF="src/HsExpr.html#GRHS" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="ndoc" >Guarded Right Hand Side. </TD ></TR ><TR ><TD CLASS="section4" >Constructors</TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0" ><TR ><TD CLASS="arg" ><A NAME="v:GRHS" ><A NAME="v%3AGRHS" ></A ></A ><B >GRHS</B > [<A HREF="HsExpr.html#t%3ALStmt" >LStmt</A > id] (<A HREF="HsExpr.html#t%3ALHsExpr" >LHsExpr</A > id)</TD ><TD CLASS="rdoc" ></TD ></TR ></TABLE ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><A NAME="v:pprMatches" ><A NAME="v%3ApprMatches" ></A ></A ><B >pprMatches</B > :: (<A HREF="Outputable.html#t%3AOutputableBndr" >OutputableBndr</A > idL, <A HREF="Outputable.html#t%3AOutputableBndr" >OutputableBndr</A > idR) => <A HREF="HsExpr.html#t%3AHsMatchContext" >HsMatchContext</A > idL -> <A HREF="HsExpr.html#t%3AMatchGroup" >MatchGroup</A > idR -> <A HREF="Outputable.html#t%3ASDoc" >SDoc</A ></TD ><TD CLASS="declbut" ><A HREF="src/HsExpr.html#pprMatches" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><A NAME="v:pprFunBind" ><A NAME="v%3ApprFunBind" ></A ></A ><B >pprFunBind</B > :: (<A HREF="Outputable.html#t%3AOutputableBndr" >OutputableBndr</A > idL, <A HREF="Outputable.html#t%3AOutputableBndr" >OutputableBndr</A > idR) => idL -> <A HREF="../base-4.2.0.2/Data-Bool.html#t%3ABool" >Bool</A > -> <A HREF="HsExpr.html#t%3AMatchGroup" >MatchGroup</A > idR -> <A HREF="Outputable.html#t%3ASDoc" >SDoc</A ></TD ><TD CLASS="declbut" ><A HREF="src/HsExpr.html#pprFunBind" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><A NAME="v:pprPatBind" ><A NAME="v%3ApprPatBind" ></A ></A ><B >pprPatBind</B > :: (<A HREF="Outputable.html#t%3AOutputableBndr" >OutputableBndr</A > bndr, <A HREF="Outputable.html#t%3AOutputableBndr" >OutputableBndr</A > id) => <A HREF="HsPat.html#t%3ALPat" >LPat</A > bndr -> <A HREF="HsExpr.html#t%3AGRHSs" >GRHSs</A > id -> <A HREF="Outputable.html#t%3ASDoc" >SDoc</A ></TD ><TD CLASS="declbut" ><A HREF="src/HsExpr.html#pprPatBind" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><A NAME="v:pprMatch" ><A NAME="v%3ApprMatch" ></A ></A ><B >pprMatch</B > :: (<A HREF="Outputable.html#t%3AOutputableBndr" >OutputableBndr</A > idL, <A HREF="Outputable.html#t%3AOutputableBndr" >OutputableBndr</A > idR) => <A HREF="HsExpr.html#t%3AHsMatchContext" >HsMatchContext</A > idL -> <A HREF="HsExpr.html#t%3AMatch" >Match</A > idR -> <A HREF="Outputable.html#t%3ASDoc" >SDoc</A ></TD ><TD CLASS="declbut" ><A HREF="src/HsExpr.html#pprMatch" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><A NAME="v:pprGRHSs" ><A NAME="v%3ApprGRHSs" ></A ></A ><B >pprGRHSs</B > :: (<A HREF="Outputable.html#t%3AOutputableBndr" >OutputableBndr</A > idL, <A HREF="Outputable.html#t%3AOutputableBndr" >OutputableBndr</A > idR) => <A HREF="HsExpr.html#t%3AHsMatchContext" >HsMatchContext</A > idL -> <A HREF="HsExpr.html#t%3AGRHSs" >GRHSs</A > idR -> <A HREF="Outputable.html#t%3ASDoc" >SDoc</A ></TD ><TD CLASS="declbut" ><A HREF="src/HsExpr.html#pprGRHSs" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><A NAME="v:pprGRHS" ><A NAME="v%3ApprGRHS" ></A ></A ><B >pprGRHS</B > :: (<A HREF="Outputable.html#t%3AOutputableBndr" >OutputableBndr</A > idL, <A HREF="Outputable.html#t%3AOutputableBndr" >OutputableBndr</A > idR) => <A HREF="HsExpr.html#t%3AHsMatchContext" >HsMatchContext</A > idL -> <A HREF="HsExpr.html#t%3AGRHS" >GRHS</A > idR -> <A HREF="Outputable.html#t%3ASDoc" >SDoc</A ></TD ><TD CLASS="declbut" ><A HREF="src/HsExpr.html#pprGRHS" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><A NAME="v:pp_rhs" ><A NAME="v%3App_rhs" ></A ></A ><B >pp_rhs</B > :: <A HREF="Outputable.html#t%3AOutputableBndr" >OutputableBndr</A > idR => <A HREF="HsExpr.html#t%3AHsMatchContext" >HsMatchContext</A > idL -> <A HREF="HsExpr.html#t%3ALHsExpr" >LHsExpr</A > idR -> <A HREF="Outputable.html#t%3ASDoc" >SDoc</A ></TD ><TD CLASS="declbut" ><A HREF="src/HsExpr.html#pp_rhs" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><SPAN CLASS="keyword" >type</SPAN > <A NAME="t:LStmt" ><A NAME="t%3ALStmt" ></A ></A ><B >LStmt</B > id = <A HREF="SrcLoc.html#t%3ALocated" >Located</A > (<A HREF="HsExpr.html#t%3AStmtLR" >StmtLR</A > id id)</TD ><TD CLASS="declbut" ><A HREF="src/HsExpr.html#LStmt" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><SPAN CLASS="keyword" >type</SPAN > <A NAME="t:LStmtLR" ><A NAME="t%3ALStmtLR" ></A ></A ><B >LStmtLR</B > idL idR = <A HREF="SrcLoc.html#t%3ALocated" >Located</A > (<A HREF="HsExpr.html#t%3AStmtLR" >StmtLR</A > idL idR)</TD ><TD CLASS="declbut" ><A HREF="src/HsExpr.html#LStmtLR" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><SPAN CLASS="keyword" >type</SPAN > <A NAME="t:Stmt" ><A NAME="t%3AStmt" ></A ></A ><B >Stmt</B > id = <A HREF="HsExpr.html#t%3AStmtLR" >StmtLR</A > id id</TD ><TD CLASS="declbut" ><A HREF="src/HsExpr.html#Stmt" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><SPAN CLASS="keyword" >data</SPAN > <A NAME="t:GroupByClause" ><A NAME="t%3AGroupByClause" ></A ></A ><B >GroupByClause</B > id </TD ><TD CLASS="declbut" ><A HREF="src/HsExpr.html#GroupByClause" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="section4" >Constructors</TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0" ><TR ><TD CLASS="arg" ><A NAME="v:GroupByNothing" ><A NAME="v%3AGroupByNothing" ></A ></A ><B >GroupByNothing</B > (<A HREF="HsExpr.html#t%3ALHsExpr" >LHsExpr</A > id)</TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:GroupBySomething" ><A NAME="v%3AGroupBySomething" ></A ></A ><B >GroupBySomething</B > (<A HREF="../base-4.2.0.2/Data-Either.html#t%3AEither" >Either</A > (<A HREF="HsExpr.html#t%3ALHsExpr" >LHsExpr</A > id) (<A HREF="HsExpr.html#t%3ASyntaxExpr" >SyntaxExpr</A > id)) (<A HREF="HsExpr.html#t%3ALHsExpr" >LHsExpr</A > id)</TD ><TD CLASS="rdoc" ></TD ></TR ></TABLE ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><SPAN CLASS="keyword" >data</SPAN > <A NAME="t:StmtLR" ><A NAME="t%3AStmtLR" ></A ></A ><B >StmtLR</B > idL idR </TD ><TD CLASS="declbut" ><A HREF="src/HsExpr.html#StmtLR" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="section4" >Constructors</TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="5" CELLPADDING="0" ><TR ><TD CLASS="arg" ><A NAME="v:BindStmt" ><A NAME="v%3ABindStmt" ></A ></A ><B >BindStmt</B > (<A HREF="HsPat.html#t%3ALPat" >LPat</A > idL) (<A HREF="HsExpr.html#t%3ALHsExpr" >LHsExpr</A > idR) (<A HREF="HsExpr.html#t%3ASyntaxExpr" >SyntaxExpr</A > idR) (<A HREF="HsExpr.html#t%3ASyntaxExpr" >SyntaxExpr</A > idR)</TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:ExprStmt" ><A NAME="v%3AExprStmt" ></A ></A ><B >ExprStmt</B > (<A HREF="HsExpr.html#t%3ALHsExpr" >LHsExpr</A > idR) (<A HREF="HsExpr.html#t%3ASyntaxExpr" >SyntaxExpr</A > idR) <A HREF="HsTypes.html#t%3APostTcType" >PostTcType</A ></TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:LetStmt" ><A NAME="v%3ALetStmt" ></A ></A ><B >LetStmt</B > (<A HREF="HsBinds.html#t%3AHsLocalBindsLR" >HsLocalBindsLR</A > idL idR)</TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:ParStmt" ><A NAME="v%3AParStmt" ></A ></A ><B >ParStmt</B > [([<A HREF="HsExpr.html#t%3ALStmt" >LStmt</A > idL], [idR])]</TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:TransformStmt" ><A NAME="v%3ATransformStmt" ></A ></A ><B >TransformStmt</B > ([<A HREF="HsExpr.html#t%3ALStmt" >LStmt</A > idL], [idR]) (<A HREF="HsExpr.html#t%3ALHsExpr" >LHsExpr</A > idR) (<A HREF="../base-4.2.0.2/Data-Maybe.html#t%3AMaybe" >Maybe</A > (<A HREF="HsExpr.html#t%3ALHsExpr" >LHsExpr</A > idR))</TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:GroupStmt" ><A NAME="v%3AGroupStmt" ></A ></A ><B >GroupStmt</B > ([<A HREF="HsExpr.html#t%3ALStmt" >LStmt</A > idL], [(idR, idR)]) (<A HREF="HsExpr.html#t%3AGroupByClause" >GroupByClause</A > idR)</TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:RecStmt" ><A NAME="v%3ARecStmt" ></A ></A ><B >RecStmt</B ></TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="body" COLSPAN="2" ><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0" ><TR ><TD CLASS="arg" ><A NAME="v:recS_stmts" ><A NAME="v%3ArecS_stmts" ></A ></A ><B >recS_stmts</B > :: [<A HREF="HsExpr.html#t%3ALStmtLR" >LStmtLR</A > idL idR]</TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:recS_later_ids" ><A NAME="v%3ArecS_later_ids" ></A ></A ><B >recS_later_ids</B > :: [idR]</TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:recS_rec_ids" ><A NAME="v%3ArecS_rec_ids" ></A ></A ><B >recS_rec_ids</B > :: [idR]</TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:recS_bind_fn" ><A NAME="v%3ArecS_bind_fn" ></A ></A ><B >recS_bind_fn</B > :: <A HREF="HsExpr.html#t%3ASyntaxExpr" >SyntaxExpr</A > idR</TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:recS_ret_fn" ><A NAME="v%3ArecS_ret_fn" ></A ></A ><B >recS_ret_fn</B > :: <A HREF="HsExpr.html#t%3ASyntaxExpr" >SyntaxExpr</A > idR</TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:recS_mfix_fn" ><A NAME="v%3ArecS_mfix_fn" ></A ></A ><B >recS_mfix_fn</B > :: <A HREF="HsExpr.html#t%3ASyntaxExpr" >SyntaxExpr</A > idR</TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:recS_rec_rets" ><A NAME="v%3ArecS_rec_rets" ></A ></A ><B >recS_rec_rets</B > :: [<A HREF="HsExpr.html#t%3APostTcExpr" >PostTcExpr</A >]</TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:recS_dicts" ><A NAME="v%3ArecS_dicts" ></A ></A ><B >recS_dicts</B > :: <A HREF="HsBinds.html#t%3ADictBinds" >DictBinds</A > idR</TD ><TD CLASS="rdoc" ></TD ></TR ></TABLE ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="section4" ><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'i:StmtLR')" ALT="show/hide" > Instances</TD ></TR ><TR ><TD CLASS="body" ><DIV ID="i:StmtLR" STYLE="display:block;" ><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0" ><TR ><TD CLASS="decl" >(<A HREF="Outputable.html#t%3AOutputableBndr" >OutputableBndr</A > idL, <A HREF="Outputable.html#t%3AOutputableBndr" >OutputableBndr</A > idR) => <A HREF="Outputable.html#t%3AOutputable" >Outputable</A > (<A HREF="HsExpr.html#t%3AStmtLR" >StmtLR</A > idL idR)</TD ></TR ></TABLE ></DIV ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><A NAME="v:pprStmt" ><A NAME="v%3ApprStmt" ></A ></A ><B >pprStmt</B > :: (<A HREF="Outputable.html#t%3AOutputableBndr" >OutputableBndr</A > idL, <A HREF="Outputable.html#t%3AOutputableBndr" >OutputableBndr</A > idR) => <A HREF="HsExpr.html#t%3AStmtLR" >StmtLR</A > idL idR -> <A HREF="Outputable.html#t%3ASDoc" >SDoc</A ></TD ><TD CLASS="declbut" ><A HREF="src/HsExpr.html#pprStmt" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><A NAME="v:pprGroupByClause" ><A NAME="v%3ApprGroupByClause" ></A ></A ><B >pprGroupByClause</B > :: <A HREF="Outputable.html#t%3AOutputableBndr" >OutputableBndr</A > id => <A HREF="HsExpr.html#t%3AGroupByClause" >GroupByClause</A > id -> <A HREF="Outputable.html#t%3ASDoc" >SDoc</A ></TD ><TD CLASS="declbut" ><A HREF="src/HsExpr.html#pprGroupByClause" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><A NAME="v:pprDo" ><A NAME="v%3ApprDo" ></A ></A ><B >pprDo</B > :: <A HREF="Outputable.html#t%3AOutputableBndr" >OutputableBndr</A > id => <A HREF="HsExpr.html#t%3AHsStmtContext" >HsStmtContext</A > any -> [<A HREF="HsExpr.html#t%3ALStmt" >LStmt</A > id] -> <A HREF="HsExpr.html#t%3ALHsExpr" >LHsExpr</A > id -> <A HREF="Outputable.html#t%3ASDoc" >SDoc</A ></TD ><TD CLASS="declbut" ><A HREF="src/HsExpr.html#pprDo" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><A NAME="v:ppr_do_stmts" ><A NAME="v%3Appr_do_stmts" ></A ></A ><B >ppr_do_stmts</B > :: <A HREF="Outputable.html#t%3AOutputableBndr" >OutputableBndr</A > id => [<A HREF="HsExpr.html#t%3ALStmt" >LStmt</A > id] -> <A HREF="HsExpr.html#t%3ALHsExpr" >LHsExpr</A > id -> <A HREF="Outputable.html#t%3ASDoc" >SDoc</A ></TD ><TD CLASS="declbut" ><A HREF="src/HsExpr.html#ppr_do_stmts" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><A NAME="v:pprComp" ><A NAME="v%3ApprComp" ></A ></A ><B >pprComp</B > :: <A HREF="Outputable.html#t%3AOutputableBndr" >OutputableBndr</A > id => (<A HREF="Outputable.html#t%3ASDoc" >SDoc</A > -> <A HREF="Outputable.html#t%3ASDoc" >SDoc</A >) -> [<A HREF="HsExpr.html#t%3ALStmt" >LStmt</A > id] -> <A HREF="HsExpr.html#t%3ALHsExpr" >LHsExpr</A > id -> <A HREF="Outputable.html#t%3ASDoc" >SDoc</A ></TD ><TD CLASS="declbut" ><A HREF="src/HsExpr.html#pprComp" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><SPAN CLASS="keyword" >data</SPAN > <A NAME="t:HsSplice" ><A NAME="t%3AHsSplice" ></A ></A ><B >HsSplice</B > id </TD ><TD CLASS="declbut" ><A HREF="src/HsExpr.html#HsSplice" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="section4" >Constructors</TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0" ><TR ><TD CLASS="arg" ><A NAME="v:HsSplice" ><A NAME="v%3AHsSplice" ></A ></A ><B >HsSplice</B > id (<A HREF="HsExpr.html#t%3ALHsExpr" >LHsExpr</A > id)</TD ><TD CLASS="rdoc" ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="section4" ><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'i:HsSplice')" ALT="show/hide" > Instances</TD ></TR ><TR ><TD CLASS="body" ><DIV ID="i:HsSplice" STYLE="display:block;" ><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0" ><TR ><TD CLASS="decl" ><A HREF="Outputable.html#t%3AOutputableBndr" >OutputableBndr</A > id => <A HREF="Outputable.html#t%3AOutputable" >Outputable</A > (<A HREF="HsExpr.html#t%3AHsSplice" >HsSplice</A > id)</TD ></TR ></TABLE ></DIV ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><A NAME="v:pprSplice" ><A NAME="v%3ApprSplice" ></A ></A ><B >pprSplice</B > :: <A HREF="Outputable.html#t%3AOutputableBndr" >OutputableBndr</A > id => <A HREF="HsExpr.html#t%3AHsSplice" >HsSplice</A > id -> <A HREF="Outputable.html#t%3ASDoc" >SDoc</A ></TD ><TD CLASS="declbut" ><A HREF="src/HsExpr.html#pprSplice" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><SPAN CLASS="keyword" >data</SPAN > <A NAME="t:HsBracket" ><A NAME="t%3AHsBracket" ></A ></A ><B >HsBracket</B > id </TD ><TD CLASS="declbut" ><A HREF="src/HsExpr.html#HsBracket" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="section4" >Constructors</TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0" ><TR ><TD CLASS="arg" ><A NAME="v:ExpBr" ><A NAME="v%3AExpBr" ></A ></A ><B >ExpBr</B > (<A HREF="HsExpr.html#t%3ALHsExpr" >LHsExpr</A > id)</TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:PatBr" ><A NAME="v%3APatBr" ></A ></A ><B >PatBr</B > (<A HREF="HsPat.html#t%3ALPat" >LPat</A > id)</TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:DecBr" ><A NAME="v%3ADecBr" ></A ></A ><B >DecBr</B > (<A HREF="HsDecls.html#t%3AHsGroup" >HsGroup</A > id)</TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:TypBr" ><A NAME="v%3ATypBr" ></A ></A ><B >TypBr</B > (<A HREF="HsTypes.html#t%3ALHsType" >LHsType</A > id)</TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:VarBr" ><A NAME="v%3AVarBr" ></A ></A ><B >VarBr</B > id</TD ><TD CLASS="rdoc" ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="section4" ><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'i:HsBracket')" ALT="show/hide" > Instances</TD ></TR ><TR ><TD CLASS="body" ><DIV ID="i:HsBracket" STYLE="display:block;" ><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0" ><TR ><TD CLASS="decl" ><A HREF="Outputable.html#t%3AOutputableBndr" >OutputableBndr</A > id => <A HREF="Outputable.html#t%3AOutputable" >Outputable</A > (<A HREF="HsExpr.html#t%3AHsBracket" >HsBracket</A > id)</TD ></TR ></TABLE ></DIV ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><A NAME="v:pprHsBracket" ><A NAME="v%3ApprHsBracket" ></A ></A ><B >pprHsBracket</B > :: <A HREF="Outputable.html#t%3AOutputableBndr" >OutputableBndr</A > id => <A HREF="HsExpr.html#t%3AHsBracket" >HsBracket</A > id -> <A HREF="Outputable.html#t%3ASDoc" >SDoc</A ></TD ><TD CLASS="declbut" ><A HREF="src/HsExpr.html#pprHsBracket" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><A NAME="v:thBrackets" ><A NAME="v%3AthBrackets" ></A ></A ><B >thBrackets</B > :: <A HREF="Outputable.html#t%3ASDoc" >SDoc</A > -> <A HREF="Outputable.html#t%3ASDoc" >SDoc</A > -> <A HREF="Outputable.html#t%3ASDoc" >SDoc</A ></TD ><TD CLASS="declbut" ><A HREF="src/HsExpr.html#thBrackets" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><SPAN CLASS="keyword" >data</SPAN > <A NAME="t:ArithSeqInfo" ><A NAME="t%3AArithSeqInfo" ></A ></A ><B >ArithSeqInfo</B > id </TD ><TD CLASS="declbut" ><A HREF="src/HsExpr.html#ArithSeqInfo" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="section4" >Constructors</TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0" ><TR ><TD CLASS="arg" ><A NAME="v:From" ><A NAME="v%3AFrom" ></A ></A ><B >From</B > (<A HREF="HsExpr.html#t%3ALHsExpr" >LHsExpr</A > id)</TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:FromThen" ><A NAME="v%3AFromThen" ></A ></A ><B >FromThen</B > (<A HREF="HsExpr.html#t%3ALHsExpr" >LHsExpr</A > id) (<A HREF="HsExpr.html#t%3ALHsExpr" >LHsExpr</A > id)</TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:FromTo" ><A NAME="v%3AFromTo" ></A ></A ><B >FromTo</B > (<A HREF="HsExpr.html#t%3ALHsExpr" >LHsExpr</A > id) (<A HREF="HsExpr.html#t%3ALHsExpr" >LHsExpr</A > id)</TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:FromThenTo" ><A NAME="v%3AFromThenTo" ></A ></A ><B >FromThenTo</B > (<A HREF="HsExpr.html#t%3ALHsExpr" >LHsExpr</A > id) (<A HREF="HsExpr.html#t%3ALHsExpr" >LHsExpr</A > id) (<A HREF="HsExpr.html#t%3ALHsExpr" >LHsExpr</A > id)</TD ><TD CLASS="rdoc" ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="section4" ><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'i:ArithSeqInfo')" ALT="show/hide" > Instances</TD ></TR ><TR ><TD CLASS="body" ><DIV ID="i:ArithSeqInfo" STYLE="display:block;" ><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0" ><TR ><TD CLASS="decl" ><A HREF="Outputable.html#t%3AOutputableBndr" >OutputableBndr</A > id => <A HREF="Outputable.html#t%3AOutputable" >Outputable</A > (<A HREF="HsExpr.html#t%3AArithSeqInfo" >ArithSeqInfo</A > id)</TD ></TR ></TABLE ></DIV ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><A NAME="v:pp_dotdot" ><A NAME="v%3App_dotdot" ></A ></A ><B >pp_dotdot</B > :: <A HREF="Outputable.html#t%3ASDoc" >SDoc</A ></TD ><TD CLASS="declbut" ><A HREF="src/HsExpr.html#pp_dotdot" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><SPAN CLASS="keyword" >data</SPAN > <A NAME="t:HsMatchContext" ><A NAME="t%3AHsMatchContext" ></A ></A ><B >HsMatchContext</B > id </TD ><TD CLASS="declbut" ><A HREF="src/HsExpr.html#HsMatchContext" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="section4" >Constructors</TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0" ><TR ><TD CLASS="arg" ><A NAME="v:FunRhs" ><A NAME="v%3AFunRhs" ></A ></A ><B >FunRhs</B > id <A HREF="../base-4.2.0.2/Data-Bool.html#t%3ABool" >Bool</A ></TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:CaseAlt" ><A NAME="v%3ACaseAlt" ></A ></A ><B >CaseAlt</B ></TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:LambdaExpr" ><A NAME="v%3ALambdaExpr" ></A ></A ><B >LambdaExpr</B ></TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:ProcExpr" ><A NAME="v%3AProcExpr" ></A ></A ><B >ProcExpr</B ></TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:PatBindRhs" ><A NAME="v%3APatBindRhs" ></A ></A ><B >PatBindRhs</B ></TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:RecUpd" ><A NAME="v%3ARecUpd" ></A ></A ><B >RecUpd</B ></TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:StmtCtxt" ><A NAME="v%3AStmtCtxt" ></A ></A ><B >StmtCtxt</B > (<A HREF="HsExpr.html#t%3AHsStmtContext" >HsStmtContext</A > id)</TD ><TD CLASS="rdoc" ></TD ></TR ></TABLE ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><SPAN CLASS="keyword" >data</SPAN > <A NAME="t:HsStmtContext" ><A NAME="t%3AHsStmtContext" ></A ></A ><B >HsStmtContext</B > id </TD ><TD CLASS="declbut" ><A HREF="src/HsExpr.html#HsStmtContext" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="section4" >Constructors</TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0" ><TR ><TD CLASS="arg" ><A NAME="v:ListComp" ><A NAME="v%3AListComp" ></A ></A ><B >ListComp</B ></TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:DoExpr" ><A NAME="v%3ADoExpr" ></A ></A ><B >DoExpr</B ></TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:GhciStmt" ><A NAME="v%3AGhciStmt" ></A ></A ><B >GhciStmt</B ></TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:MDoExpr" ><A NAME="v%3AMDoExpr" ></A ></A ><B >MDoExpr</B > <A HREF="HsExpr.html#t%3APostTcTable" >PostTcTable</A ></TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:PArrComp" ><A NAME="v%3APArrComp" ></A ></A ><B >PArrComp</B ></TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:PatGuard" ><A NAME="v%3APatGuard" ></A ></A ><B >PatGuard</B > (<A HREF="HsExpr.html#t%3AHsMatchContext" >HsMatchContext</A > id)</TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:ParStmtCtxt" ><A NAME="v%3AParStmtCtxt" ></A ></A ><B >ParStmtCtxt</B > (<A HREF="HsExpr.html#t%3AHsStmtContext" >HsStmtContext</A > id)</TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:TransformStmtCtxt" ><A NAME="v%3ATransformStmtCtxt" ></A ></A ><B >TransformStmtCtxt</B > (<A HREF="HsExpr.html#t%3AHsStmtContext" >HsStmtContext</A > id)</TD ><TD CLASS="rdoc" ></TD ></TR ></TABLE ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><A NAME="v:isDoExpr" ><A NAME="v%3AisDoExpr" ></A ></A ><B >isDoExpr</B > :: <A HREF="HsExpr.html#t%3AHsStmtContext" >HsStmtContext</A > id -> <A HREF="../base-4.2.0.2/Data-Bool.html#t%3ABool" >Bool</A ></TD ><TD CLASS="declbut" ><A HREF="src/HsExpr.html#isDoExpr" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><A NAME="v:isListCompExpr" ><A NAME="v%3AisListCompExpr" ></A ></A ><B >isListCompExpr</B > :: <A HREF="HsExpr.html#t%3AHsStmtContext" >HsStmtContext</A > id -> <A HREF="../base-4.2.0.2/Data-Bool.html#t%3ABool" >Bool</A ></TD ><TD CLASS="declbut" ><A HREF="src/HsExpr.html#isListCompExpr" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><A NAME="v:matchSeparator" ><A NAME="v%3AmatchSeparator" ></A ></A ><B >matchSeparator</B > :: <A HREF="HsExpr.html#t%3AHsMatchContext" >HsMatchContext</A > id -> <A HREF="Outputable.html#t%3ASDoc" >SDoc</A ></TD ><TD CLASS="declbut" ><A HREF="src/HsExpr.html#matchSeparator" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><A NAME="v:pprMatchContext" ><A NAME="v%3ApprMatchContext" ></A ></A ><B >pprMatchContext</B > :: <A HREF="Outputable.html#t%3AOutputable" >Outputable</A > id => <A HREF="HsExpr.html#t%3AHsMatchContext" >HsMatchContext</A > id -> <A HREF="Outputable.html#t%3ASDoc" >SDoc</A ></TD ><TD CLASS="declbut" ><A HREF="src/HsExpr.html#pprMatchContext" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><A NAME="v:pprStmtContext" ><A NAME="v%3ApprStmtContext" ></A ></A ><B >pprStmtContext</B > :: <A HREF="Outputable.html#t%3AOutputable" >Outputable</A > id => <A HREF="HsExpr.html#t%3AHsStmtContext" >HsStmtContext</A > id -> <A HREF="Outputable.html#t%3ASDoc" >SDoc</A ></TD ><TD CLASS="declbut" ><A HREF="src/HsExpr.html#pprStmtContext" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><A NAME="v:matchContextErrString" ><A NAME="v%3AmatchContextErrString" ></A ></A ><B >matchContextErrString</B > :: <A HREF="Outputable.html#t%3AOutputable" >Outputable</A > id => <A HREF="HsExpr.html#t%3AHsMatchContext" >HsMatchContext</A > id -> <A HREF="Outputable.html#t%3ASDoc" >SDoc</A ></TD ><TD CLASS="declbut" ><A HREF="src/HsExpr.html#matchContextErrString" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><A NAME="v:pprMatchInCtxt" ><A NAME="v%3ApprMatchInCtxt" ></A ></A ><B >pprMatchInCtxt</B > :: (<A HREF="Outputable.html#t%3AOutputableBndr" >OutputableBndr</A > idL, <A HREF="Outputable.html#t%3AOutputableBndr" >OutputableBndr</A > idR) => <A HREF="HsExpr.html#t%3AHsMatchContext" >HsMatchContext</A > idL -> <A HREF="HsExpr.html#t%3AMatch" >Match</A > idR -> <A HREF="Outputable.html#t%3ASDoc" >SDoc</A ></TD ><TD CLASS="declbut" ><A HREF="src/HsExpr.html#pprMatchInCtxt" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><A NAME="v:pprStmtInCtxt" ><A NAME="v%3ApprStmtInCtxt" ></A ></A ><B >pprStmtInCtxt</B > :: (<A HREF="Outputable.html#t%3AOutputableBndr" >OutputableBndr</A > idL, <A HREF="Outputable.html#t%3AOutputableBndr" >OutputableBndr</A > idR) => <A HREF="HsExpr.html#t%3AHsStmtContext" >HsStmtContext</A > idL -> <A HREF="HsExpr.html#t%3AStmtLR" >StmtLR</A > idL idR -> <A HREF="Outputable.html#t%3ASDoc" >SDoc</A ></TD ><TD CLASS="declbut" ><A HREF="src/HsExpr.html#pprStmtInCtxt" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="botbar" >Produced by <A HREF="http://www.haskell.org/haddock/" >Haddock</A > version 2.6.1</TD ></TR ></TABLE ></BODY ></HTML >