<!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 >Language.Haskell.Exts.Annotated.Syntax</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_Language-Haskell-Exts-Annotated-Syntax.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" >haskell-src-exts-1.9.0: Manipulating Haskell source: abstract syntax, lexer, parser, and pretty-printer</TD ><TD CLASS="topbut" ><A HREF="src/Language-Haskell-Exts-Annotated-Syntax.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" >Language.Haskell.Exts.Annotated.Syntax</FONT ></TD ><TD ALIGN="right" ><TABLE CLASS="narrow" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="infohead" >Portability</TD ><TD CLASS="infoval" >portable</TD ></TR ><TR ><TD CLASS="infohead" >Stability</TD ><TD CLASS="infoval" >stable</TD ></TR ><TR ><TD CLASS="infohead" >Maintainer</TD ><TD CLASS="infoval" >Niklas Broberg, d00nibro@chalmers.se</TD ></TR ></TABLE ></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" >Modules </A ></DT ><DT ><A HREF="#2" >Declarations </A ></DT ><DD ><DL ><DT ><A HREF="#3" >Type classes and instances </A ></DT ><DT ><A HREF="#4" >Data type declarations </A ></DT ><DT ><A HREF="#5" >Function bindings </A ></DT ></DL ></DD ><DT ><A HREF="#6" >Class Assertions and Contexts </A ></DT ><DT ><A HREF="#7" >Types </A ></DT ><DT ><A HREF="#8" >Expressions </A ></DT ><DT ><A HREF="#9" >Patterns </A ></DT ><DT ><A HREF="#10" >Literals </A ></DT ><DT ><A HREF="#11" >Variables, Constructors and Operators </A ></DT ><DT ><A HREF="#12" >Template Haskell </A ></DT ><DT ><A HREF="#13" >FFI </A ></DT ><DT ><A HREF="#14" >Pragmas </A ></DT ><DT ><A HREF="#15" >Builtin names </A ></DT ><DD ><DL ><DT ><A HREF="#16" >Modules </A ></DT ><DT ><A HREF="#17" >Main function of a program </A ></DT ><DT ><A HREF="#18" >Constructors </A ></DT ><DT ><A HREF="#19" >Special identifiers </A ></DT ><DT ><A HREF="#20" >Type constructors </A ></DT ></DL ></DD ><DT ><A HREF="#21" >Source coordinates </A ></DT ><DT ><A HREF="#22" >Annotated trees </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" ><P >A suite of datatypes describing the (semi-concrete) abstract syntax of Haskell 98 <A HREF="http://www.haskell.org/onlinereport/" >http://www.haskell.org/onlinereport/</A > plus registered extensions, including: </P ><UL ><LI > multi-parameter type classes with functional dependencies (MultiParamTypeClasses, FunctionalDependencies) </LI ><LI > parameters of type class assertions are unrestricted (FlexibleContexts) </LI ><LI > forall types as universal and existential quantification (RankNTypes, ExistentialQuantification, etc) </LI ><LI > pattern guards (PatternGuards) </LI ><LI > implicit parameters (ImplicitParameters) </LI ><LI > generalised algebraic data types (GADTs) </LI ><LI > template haskell (TemplateHaskell) </LI ><LI > empty data type declarations (EmptyDataDecls) </LI ><LI > unboxed tuples (UnboxedTuples) </LI ><LI > regular patterns (RegularPatterns) </LI ><LI > HSP-style XML expressions and patterns (XmlSyntax) </LI ></UL ><P >All nodes in the syntax tree are annotated with something of a user-definable data type. When parsing, this annotation will contain information about the source location that the particular node comes from. </P ></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" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >data</SPAN > <A HREF="#t%3AModule" >Module</A > l </TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="decl" >= <A HREF="#v%3AModule" >Module</A > l (<A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Maybe.html#t%3AMaybe" >Maybe</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AModuleHead" >ModuleHead</A > l)) [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AModulePragma" >ModulePragma</A > l] [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AImportDecl" >ImportDecl</A > l] [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ADecl" >Decl</A > l]</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AXmlPage" >XmlPage</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AModuleName" >ModuleName</A > l) [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AModulePragma" >ModulePragma</A > l] (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AXName" >XName</A > l) [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AXAttr" >XAttr</A > l] (<A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Maybe.html#t%3AMaybe" >Maybe</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l)) [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l]</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AXmlHybrid" >XmlHybrid</A > l (<A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Maybe.html#t%3AMaybe" >Maybe</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AModuleHead" >ModuleHead</A > l)) [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AModulePragma" >ModulePragma</A > l] [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AImportDecl" >ImportDecl</A > l] [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ADecl" >Decl</A > l] (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AXName" >XName</A > l) [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AXAttr" >XAttr</A > l] (<A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Maybe.html#t%3AMaybe" >Maybe</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l)) [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l]</TD ></TR ></TABLE ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >data</SPAN > <A HREF="#t%3AModuleHead" >ModuleHead</A > l = <A HREF="#v%3AModuleHead" >ModuleHead</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AModuleName" >ModuleName</A > l) (<A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Maybe.html#t%3AMaybe" >Maybe</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AWarningText" >WarningText</A > l)) (<A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Maybe.html#t%3AMaybe" >Maybe</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExportSpecList" >ExportSpecList</A > l))</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%3AWarningText" >WarningText</A > l </TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="decl" >= <A HREF="#v%3ADeprText" >DeprText</A > l <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Char.html#t%3AString" >String</A ></TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AWarnText" >WarnText</A > l <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Char.html#t%3AString" >String</A ></TD ></TR ></TABLE ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >data</SPAN > <A HREF="#t%3AExportSpecList" >ExportSpecList</A > l = <A HREF="#v%3AExportSpecList" >ExportSpecList</A > l [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExportSpec" >ExportSpec</A > l]</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%3AExportSpec" >ExportSpec</A > l </TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="decl" >= <A HREF="#v%3AEVar" >EVar</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AQName" >QName</A > l)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AEAbs" >EAbs</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AQName" >QName</A > l)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AEThingAll" >EThingAll</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AQName" >QName</A > l)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AEThingWith" >EThingWith</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AQName" >QName</A > l) [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ACName" >CName</A > l]</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AEModuleContents" >EModuleContents</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AModuleName" >ModuleName</A > l)</TD ></TR ></TABLE ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >data</SPAN > <A HREF="#t%3AImportDecl" >ImportDecl</A > l = <A HREF="#v%3AImportDecl" >ImportDecl</A > {<TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="recfield" ><A HREF="#v%3AimportAnn" >importAnn</A > :: l</TD ></TR ><TR ><TD CLASS="recfield" ><A HREF="#v%3AimportModule" >importModule</A > :: <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AModuleName" >ModuleName</A > l</TD ></TR ><TR ><TD CLASS="recfield" ><A HREF="#v%3AimportQualified" >importQualified</A > :: <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Bool.html#t%3ABool" >Bool</A ></TD ></TR ><TR ><TD CLASS="recfield" ><A HREF="#v%3AimportSrc" >importSrc</A > :: <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Bool.html#t%3ABool" >Bool</A ></TD ></TR ><TR ><TD CLASS="recfield" ><A HREF="#v%3AimportPkg" >importPkg</A > :: <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Maybe.html#t%3AMaybe" >Maybe</A > <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Char.html#t%3AString" >String</A ></TD ></TR ><TR ><TD CLASS="recfield" ><A HREF="#v%3AimportAs" >importAs</A > :: <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Maybe.html#t%3AMaybe" >Maybe</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AModuleName" >ModuleName</A > l)</TD ></TR ><TR ><TD CLASS="recfield" ><A HREF="#v%3AimportSpecs" >importSpecs</A > :: <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Maybe.html#t%3AMaybe" >Maybe</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AImportSpecList" >ImportSpecList</A > l)</TD ></TR ></TABLE >}</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >data</SPAN > <A HREF="#t%3AImportSpecList" >ImportSpecList</A > l = <A HREF="#v%3AImportSpecList" >ImportSpecList</A > l <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Bool.html#t%3ABool" >Bool</A > [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AImportSpec" >ImportSpec</A > l]</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%3AImportSpec" >ImportSpec</A > l </TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="decl" >= <A HREF="#v%3AIVar" >IVar</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AName" >Name</A > l)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AIAbs" >IAbs</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AName" >Name</A > l)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AIThingAll" >IThingAll</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AName" >Name</A > l)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AIThingWith" >IThingWith</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AName" >Name</A > l) [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ACName" >CName</A > l]</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%3AAssoc" >Assoc</A > l </TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="decl" >= <A HREF="#v%3AAssocNone" >AssocNone</A > l</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AAssocLeft" >AssocLeft</A > l</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AAssocRight" >AssocRight</A > l</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%3ADecl" >Decl</A > l </TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="decl" >= <A HREF="#v%3ATypeDecl" >TypeDecl</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ADeclHead" >DeclHead</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AType" >Type</A > l)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3ATypeFamDecl" >TypeFamDecl</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ADeclHead" >DeclHead</A > l) (<A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Maybe.html#t%3AMaybe" >Maybe</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AKind" >Kind</A > l))</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3ADataDecl" >DataDecl</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ADataOrNew" >DataOrNew</A > l) (<A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Maybe.html#t%3AMaybe" >Maybe</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AContext" >Context</A > l)) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ADeclHead" >DeclHead</A > l) [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AQualConDecl" >QualConDecl</A > l] (<A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Maybe.html#t%3AMaybe" >Maybe</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ADeriving" >Deriving</A > l))</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AGDataDecl" >GDataDecl</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ADataOrNew" >DataOrNew</A > l) (<A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Maybe.html#t%3AMaybe" >Maybe</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AContext" >Context</A > l)) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ADeclHead" >DeclHead</A > l) (<A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Maybe.html#t%3AMaybe" >Maybe</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AKind" >Kind</A > l)) [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AGadtDecl" >GadtDecl</A > l] (<A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Maybe.html#t%3AMaybe" >Maybe</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ADeriving" >Deriving</A > l))</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3ADataFamDecl" >DataFamDecl</A > l (<A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Maybe.html#t%3AMaybe" >Maybe</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AContext" >Context</A > l)) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ADeclHead" >DeclHead</A > l) (<A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Maybe.html#t%3AMaybe" >Maybe</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AKind" >Kind</A > l))</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3ATypeInsDecl" >TypeInsDecl</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AType" >Type</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AType" >Type</A > l)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3ADataInsDecl" >DataInsDecl</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ADataOrNew" >DataOrNew</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AType" >Type</A > l) [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AQualConDecl" >QualConDecl</A > l] (<A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Maybe.html#t%3AMaybe" >Maybe</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ADeriving" >Deriving</A > l))</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AGDataInsDecl" >GDataInsDecl</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ADataOrNew" >DataOrNew</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AType" >Type</A > l) (<A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Maybe.html#t%3AMaybe" >Maybe</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AKind" >Kind</A > l)) [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AGadtDecl" >GadtDecl</A > l] (<A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Maybe.html#t%3AMaybe" >Maybe</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ADeriving" >Deriving</A > l))</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AClassDecl" >ClassDecl</A > l (<A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Maybe.html#t%3AMaybe" >Maybe</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AContext" >Context</A > l)) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ADeclHead" >DeclHead</A > l) [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AFunDep" >FunDep</A > l] (<A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Maybe.html#t%3AMaybe" >Maybe</A > [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AClassDecl" >ClassDecl</A > l])</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AInstDecl" >InstDecl</A > l (<A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Maybe.html#t%3AMaybe" >Maybe</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AContext" >Context</A > l)) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AInstHead" >InstHead</A > l) (<A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Maybe.html#t%3AMaybe" >Maybe</A > [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AInstDecl" >InstDecl</A > l])</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3ADerivDecl" >DerivDecl</A > l (<A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Maybe.html#t%3AMaybe" >Maybe</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AContext" >Context</A > l)) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AInstHead" >InstHead</A > l)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AInfixDecl" >InfixDecl</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAssoc" >Assoc</A > l) (<A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Maybe.html#t%3AMaybe" >Maybe</A > <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Int.html#t%3AInt" >Int</A >) [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AOp" >Op</A > l]</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3ADefaultDecl" >DefaultDecl</A > l [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AType" >Type</A > l]</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3ASpliceDecl" >SpliceDecl</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3ATypeSig" >TypeSig</A > l [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AName" >Name</A > l] (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AType" >Type</A > l)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AFunBind" >FunBind</A > l [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AMatch" >Match</A > l]</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3APatBind" >PatBind</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3APat" >Pat</A > l) (<A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Maybe.html#t%3AMaybe" >Maybe</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AType" >Type</A > l)) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ARhs" >Rhs</A > l) (<A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Maybe.html#t%3AMaybe" >Maybe</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ABinds" >Binds</A > l))</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AForImp" >ForImp</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ACallConv" >CallConv</A > l) (<A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Maybe.html#t%3AMaybe" >Maybe</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ASafety" >Safety</A > l)) (<A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Maybe.html#t%3AMaybe" >Maybe</A > <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Char.html#t%3AString" >String</A >) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AName" >Name</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AType" >Type</A > l)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AForExp" >ForExp</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ACallConv" >CallConv</A > l) (<A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Maybe.html#t%3AMaybe" >Maybe</A > <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Char.html#t%3AString" >String</A >) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AName" >Name</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AType" >Type</A > l)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3ARulePragmaDecl" >RulePragmaDecl</A > l [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ARule" >Rule</A > l]</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3ADeprPragmaDecl" >DeprPragmaDecl</A > l [([<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AName" >Name</A > l], <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Char.html#t%3AString" >String</A >)]</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AWarnPragmaDecl" >WarnPragmaDecl</A > l [([<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AName" >Name</A > l], <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Char.html#t%3AString" >String</A >)]</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AInlineSig" >InlineSig</A > l <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Bool.html#t%3ABool" >Bool</A > (<A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Maybe.html#t%3AMaybe" >Maybe</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AActivation" >Activation</A > l)) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AQName" >QName</A > l)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AInlineConlikeSig" >InlineConlikeSig</A > l (<A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Maybe.html#t%3AMaybe" >Maybe</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AActivation" >Activation</A > l)) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AQName" >QName</A > l)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3ASpecSig" >SpecSig</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AQName" >QName</A > l) [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AType" >Type</A > l]</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3ASpecInlineSig" >SpecInlineSig</A > l <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Bool.html#t%3ABool" >Bool</A > (<A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Maybe.html#t%3AMaybe" >Maybe</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AActivation" >Activation</A > l)) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AQName" >QName</A > l) [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AType" >Type</A > l]</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AInstSig" >InstSig</A > l (<A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Maybe.html#t%3AMaybe" >Maybe</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AContext" >Context</A > l)) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AInstHead" >InstHead</A > l)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AAnnPragma" >AnnPragma</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotation" >Annotation</A > l)</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%3ADeclHead" >DeclHead</A > l </TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="decl" >= <A HREF="#v%3ADHead" >DHead</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AName" >Name</A > l) [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ATyVarBind" >TyVarBind</A > l]</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3ADHInfix" >DHInfix</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ATyVarBind" >TyVarBind</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AName" >Name</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ATyVarBind" >TyVarBind</A > l)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3ADHParen" >DHParen</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ADeclHead" >DeclHead</A > l)</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%3AInstHead" >InstHead</A > l </TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="decl" >= <A HREF="#v%3AIHead" >IHead</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AQName" >QName</A > l) [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AType" >Type</A > l]</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AIHInfix" >IHInfix</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AType" >Type</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AQName" >QName</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AType" >Type</A > l)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AIHParen" >IHParen</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AInstHead" >InstHead</A > l)</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%3ABinds" >Binds</A > l </TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="decl" >= <A HREF="#v%3ABDecls" >BDecls</A > l [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ADecl" >Decl</A > l]</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AIPBinds" >IPBinds</A > l [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AIPBind" >IPBind</A > l]</TD ></TR ></TABLE ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >data</SPAN > <A HREF="#t%3AIPBind" >IPBind</A > l = <A HREF="#v%3AIPBind" >IPBind</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AIPName" >IPName</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l)</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%3AClassDecl" >ClassDecl</A > l </TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="decl" >= <A HREF="#v%3AClsDecl" >ClsDecl</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ADecl" >Decl</A > l)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AClsDataFam" >ClsDataFam</A > l (<A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Maybe.html#t%3AMaybe" >Maybe</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AContext" >Context</A > l)) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ADeclHead" >DeclHead</A > l) (<A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Maybe.html#t%3AMaybe" >Maybe</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AKind" >Kind</A > l))</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AClsTyFam" >ClsTyFam</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ADeclHead" >DeclHead</A > l) (<A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Maybe.html#t%3AMaybe" >Maybe</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AKind" >Kind</A > l))</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AClsTyDef" >ClsTyDef</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AType" >Type</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AType" >Type</A > l)</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%3AInstDecl" >InstDecl</A > l </TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="decl" >= <A HREF="#v%3AInsDecl" >InsDecl</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ADecl" >Decl</A > l)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AInsType" >InsType</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AType" >Type</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AType" >Type</A > l)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AInsData" >InsData</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ADataOrNew" >DataOrNew</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AType" >Type</A > l) [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AQualConDecl" >QualConDecl</A > l] (<A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Maybe.html#t%3AMaybe" >Maybe</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ADeriving" >Deriving</A > l))</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AInsGData" >InsGData</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ADataOrNew" >DataOrNew</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AType" >Type</A > l) (<A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Maybe.html#t%3AMaybe" >Maybe</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AKind" >Kind</A > l)) [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AGadtDecl" >GadtDecl</A > l] (<A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Maybe.html#t%3AMaybe" >Maybe</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ADeriving" >Deriving</A > l))</TD ></TR ></TABLE ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >data</SPAN > <A HREF="#t%3ADeriving" >Deriving</A > l = <A HREF="#v%3ADeriving" >Deriving</A > l [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AInstHead" >InstHead</A > l]</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%3ADataOrNew" >DataOrNew</A > l </TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="decl" >= <A HREF="#v%3ADataType" >DataType</A > l</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3ANewType" >NewType</A > l</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%3AConDecl" >ConDecl</A > l </TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="decl" >= <A HREF="#v%3AConDecl" >ConDecl</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AName" >Name</A > l) [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ABangType" >BangType</A > l]</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AInfixConDecl" >InfixConDecl</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ABangType" >BangType</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AName" >Name</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ABangType" >BangType</A > l)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3ARecDecl" >RecDecl</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AName" >Name</A > l) [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AFieldDecl" >FieldDecl</A > l]</TD ></TR ></TABLE ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >data</SPAN > <A HREF="#t%3AFieldDecl" >FieldDecl</A > l = <A HREF="#v%3AFieldDecl" >FieldDecl</A > l [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AName" >Name</A > l] (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ABangType" >BangType</A > l)</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >data</SPAN > <A HREF="#t%3AQualConDecl" >QualConDecl</A > l = <A HREF="#v%3AQualConDecl" >QualConDecl</A > l (<A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Maybe.html#t%3AMaybe" >Maybe</A > [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ATyVarBind" >TyVarBind</A > l]) (<A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Maybe.html#t%3AMaybe" >Maybe</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AContext" >Context</A > l)) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AConDecl" >ConDecl</A > l)</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >data</SPAN > <A HREF="#t%3AGadtDecl" >GadtDecl</A > l = <A HREF="#v%3AGadtDecl" >GadtDecl</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AName" >Name</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AType" >Type</A > l)</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%3ABangType" >BangType</A > l </TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="decl" >= <A HREF="#v%3ABangedTy" >BangedTy</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AType" >Type</A > l)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AUnBangedTy" >UnBangedTy</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AType" >Type</A > l)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AUnpackedTy" >UnpackedTy</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AType" >Type</A > l)</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%3AMatch" >Match</A > l </TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="decl" >= <A HREF="#v%3AMatch" >Match</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AName" >Name</A > l) [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3APat" >Pat</A > l] (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ARhs" >Rhs</A > l) (<A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Maybe.html#t%3AMaybe" >Maybe</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ABinds" >Binds</A > l))</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AInfixMatch" >InfixMatch</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3APat" >Pat</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AName" >Name</A > l) [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3APat" >Pat</A > l] (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ARhs" >Rhs</A > l) (<A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Maybe.html#t%3AMaybe" >Maybe</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ABinds" >Binds</A > l))</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%3ARhs" >Rhs</A > l </TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="decl" >= <A HREF="#v%3AUnGuardedRhs" >UnGuardedRhs</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AGuardedRhss" >GuardedRhss</A > l [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AGuardedRhs" >GuardedRhs</A > l]</TD ></TR ></TABLE ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >data</SPAN > <A HREF="#t%3AGuardedRhs" >GuardedRhs</A > l = <A HREF="#v%3AGuardedRhs" >GuardedRhs</A > l [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AStmt" >Stmt</A > l] (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l)</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%3AContext" >Context</A > l </TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="decl" >= <A HREF="#v%3ACxSingle" >CxSingle</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAsst" >Asst</A > l)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3ACxTuple" >CxTuple</A > l [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAsst" >Asst</A > l]</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3ACxParen" >CxParen</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AContext" >Context</A > l)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3ACxEmpty" >CxEmpty</A > l</TD ></TR ></TABLE ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >data</SPAN > <A HREF="#t%3AFunDep" >FunDep</A > l = <A HREF="#v%3AFunDep" >FunDep</A > l [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AName" >Name</A > l] [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AName" >Name</A > l]</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%3AAsst" >Asst</A > l </TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="decl" >= <A HREF="#v%3AClassA" >ClassA</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AQName" >QName</A > l) [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AType" >Type</A > l]</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AInfixA" >InfixA</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AType" >Type</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AQName" >QName</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AType" >Type</A > l)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AIParam" >IParam</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AIPName" >IPName</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AType" >Type</A > l)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AEqualP" >EqualP</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AType" >Type</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AType" >Type</A > l)</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%3AType" >Type</A > l </TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="decl" >= <A HREF="#v%3ATyForall" >TyForall</A > l (<A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Maybe.html#t%3AMaybe" >Maybe</A > [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ATyVarBind" >TyVarBind</A > l]) (<A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Maybe.html#t%3AMaybe" >Maybe</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AContext" >Context</A > l)) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AType" >Type</A > l)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3ATyFun" >TyFun</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AType" >Type</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AType" >Type</A > l)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3ATyTuple" >TyTuple</A > l <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ABoxed" >Boxed</A > [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AType" >Type</A > l]</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3ATyList" >TyList</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AType" >Type</A > l)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3ATyApp" >TyApp</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AType" >Type</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AType" >Type</A > l)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3ATyVar" >TyVar</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AName" >Name</A > l)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3ATyCon" >TyCon</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AQName" >QName</A > l)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3ATyParen" >TyParen</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AType" >Type</A > l)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3ATyInfix" >TyInfix</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AType" >Type</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AQName" >QName</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AType" >Type</A > l)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3ATyKind" >TyKind</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AType" >Type</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AKind" >Kind</A > l)</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%3ABoxed" >Boxed</A > </TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="decl" >= <A HREF="#v%3ABoxed" >Boxed</A ></TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AUnboxed" >Unboxed</A ></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%3AKind" >Kind</A > l </TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="decl" >= <A HREF="#v%3AKindStar" >KindStar</A > l</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AKindBang" >KindBang</A > l</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AKindFn" >KindFn</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AKind" >Kind</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AKind" >Kind</A > l)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AKindParen" >KindParen</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AKind" >Kind</A > l)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AKindVar" >KindVar</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AName" >Name</A > l)</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%3ATyVarBind" >TyVarBind</A > l </TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="decl" >= <A HREF="#v%3AKindedVar" >KindedVar</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AName" >Name</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AKind" >Kind</A > l)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AUnkindedVar" >UnkindedVar</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AName" >Name</A > l)</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%3AExp" >Exp</A > l </TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="decl" >= <A HREF="#v%3AVar" >Var</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AQName" >QName</A > l)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AIPVar" >IPVar</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AIPName" >IPName</A > l)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3ACon" >Con</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AQName" >QName</A > l)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3ALit" >Lit</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ALiteral" >Literal</A > l)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AInfixApp" >InfixApp</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AQOp" >QOp</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AApp" >App</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3ANegApp" >NegApp</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3ALambda" >Lambda</A > l [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3APat" >Pat</A > l] (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3ALet" >Let</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ABinds" >Binds</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AIf" >If</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3ACase" >Case</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l) [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAlt" >Alt</A > l]</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3ADo" >Do</A > l [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AStmt" >Stmt</A > l]</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AMDo" >MDo</A > l [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AStmt" >Stmt</A > l]</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3ATuple" >Tuple</A > l [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l]</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3ATupleSection" >TupleSection</A > l [<A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Maybe.html#t%3AMaybe" >Maybe</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l)]</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AList" >List</A > l [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l]</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AParen" >Paren</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3ALeftSection" >LeftSection</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AQOp" >QOp</A > l)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3ARightSection" >RightSection</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AQOp" >QOp</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3ARecConstr" >RecConstr</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AQName" >QName</A > l) [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AFieldUpdate" >FieldUpdate</A > l]</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3ARecUpdate" >RecUpdate</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l) [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AFieldUpdate" >FieldUpdate</A > l]</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AEnumFrom" >EnumFrom</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AEnumFromTo" >EnumFromTo</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AEnumFromThen" >EnumFromThen</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AEnumFromThenTo" >EnumFromThenTo</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AListComp" >ListComp</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l) [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AQualStmt" >QualStmt</A > l]</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AParComp" >ParComp</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l) [[<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AQualStmt" >QualStmt</A > l]]</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AExpTypeSig" >ExpTypeSig</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AType" >Type</A > l)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AVarQuote" >VarQuote</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AQName" >QName</A > l)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3ATypQuote" >TypQuote</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AQName" >QName</A > l)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3ABracketExp" >BracketExp</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ABracket" >Bracket</A > l)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3ASpliceExp" >SpliceExp</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ASplice" >Splice</A > l)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AQuasiQuote" >QuasiQuote</A > l <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Char.html#t%3AString" >String</A > <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Char.html#t%3AString" >String</A ></TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AXTag" >XTag</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AXName" >XName</A > l) [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AXAttr" >XAttr</A > l] (<A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Maybe.html#t%3AMaybe" >Maybe</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l)) [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l]</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AXETag" >XETag</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AXName" >XName</A > l) [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AXAttr" >XAttr</A > l] (<A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Maybe.html#t%3AMaybe" >Maybe</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l))</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AXPcdata" >XPcdata</A > l <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Char.html#t%3AString" >String</A ></TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AXExpTag" >XExpTag</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3ACorePragma" >CorePragma</A > l <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Char.html#t%3AString" >String</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3ASCCPragma" >SCCPragma</A > l <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Char.html#t%3AString" >String</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AGenPragma" >GenPragma</A > l <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Char.html#t%3AString" >String</A > (<A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Int.html#t%3AInt" >Int</A >, <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Int.html#t%3AInt" >Int</A >) (<A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Int.html#t%3AInt" >Int</A >, <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Int.html#t%3AInt" >Int</A >) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AProc" >Proc</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3APat" >Pat</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3ALeftArrApp" >LeftArrApp</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3ARightArrApp" >RightArrApp</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3ALeftArrHighApp" >LeftArrHighApp</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3ARightArrHighApp" >RightArrHighApp</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l)</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%3AStmt" >Stmt</A > l </TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="decl" >= <A HREF="#v%3AGenerator" >Generator</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3APat" >Pat</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AQualifier" >Qualifier</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3ALetStmt" >LetStmt</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ABinds" >Binds</A > l)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3ARecStmt" >RecStmt</A > l [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AStmt" >Stmt</A > l]</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%3AQualStmt" >QualStmt</A > l </TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="decl" >= <A HREF="#v%3AQualStmt" >QualStmt</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AStmt" >Stmt</A > l)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AThenTrans" >ThenTrans</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AThenBy" >ThenBy</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AGroupBy" >GroupBy</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AGroupUsing" >GroupUsing</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AGroupByUsing" >GroupByUsing</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l)</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%3AFieldUpdate" >FieldUpdate</A > l </TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="decl" >= <A HREF="#v%3AFieldUpdate" >FieldUpdate</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AQName" >QName</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AFieldPun" >FieldPun</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AName" >Name</A > l)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AFieldWildcard" >FieldWildcard</A > l</TD ></TR ></TABLE ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >data</SPAN > <A HREF="#t%3AAlt" >Alt</A > l = <A HREF="#v%3AAlt" >Alt</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3APat" >Pat</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AGuardedAlts" >GuardedAlts</A > l) (<A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Maybe.html#t%3AMaybe" >Maybe</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ABinds" >Binds</A > l))</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%3AGuardedAlts" >GuardedAlts</A > l </TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="decl" >= <A HREF="#v%3AUnGuardedAlt" >UnGuardedAlt</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AGuardedAlts" >GuardedAlts</A > l [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AGuardedAlt" >GuardedAlt</A > l]</TD ></TR ></TABLE ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >data</SPAN > <A HREF="#t%3AGuardedAlt" >GuardedAlt</A > l = <A HREF="#v%3AGuardedAlt" >GuardedAlt</A > l [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AStmt" >Stmt</A > l] (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l)</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >data</SPAN > <A HREF="#t%3AXAttr" >XAttr</A > l = <A HREF="#v%3AXAttr" >XAttr</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AXName" >XName</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l)</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%3APat" >Pat</A > l </TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="decl" >= <A HREF="#v%3APVar" >PVar</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AName" >Name</A > l)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3APLit" >PLit</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ALiteral" >Literal</A > l)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3APNeg" >PNeg</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3APat" >Pat</A > l)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3APNPlusK" >PNPlusK</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AName" >Name</A > l) <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Prelude.html#t%3AInteger" >Integer</A ></TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3APInfixApp" >PInfixApp</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3APat" >Pat</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AQName" >QName</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3APat" >Pat</A > l)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3APApp" >PApp</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AQName" >QName</A > l) [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3APat" >Pat</A > l]</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3APTuple" >PTuple</A > l [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3APat" >Pat</A > l]</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3APList" >PList</A > l [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3APat" >Pat</A > l]</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3APParen" >PParen</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3APat" >Pat</A > l)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3APRec" >PRec</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AQName" >QName</A > l) [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3APatField" >PatField</A > l]</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3APAsPat" >PAsPat</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AName" >Name</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3APat" >Pat</A > l)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3APWildCard" >PWildCard</A > l</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3APIrrPat" >PIrrPat</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3APat" >Pat</A > l)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3APatTypeSig" >PatTypeSig</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3APat" >Pat</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AType" >Type</A > l)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3APViewPat" >PViewPat</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3APat" >Pat</A > l)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3APRPat" >PRPat</A > l [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ARPat" >RPat</A > l]</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3APXTag" >PXTag</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AXName" >XName</A > l) [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3APXAttr" >PXAttr</A > l] (<A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Maybe.html#t%3AMaybe" >Maybe</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3APat" >Pat</A > l)) [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3APat" >Pat</A > l]</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3APXETag" >PXETag</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AXName" >XName</A > l) [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3APXAttr" >PXAttr</A > l] (<A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Maybe.html#t%3AMaybe" >Maybe</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3APat" >Pat</A > l))</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3APXPcdata" >PXPcdata</A > l <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Char.html#t%3AString" >String</A ></TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3APXPatTag" >PXPatTag</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3APat" >Pat</A > l)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3APXRPats" >PXRPats</A > l [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ARPat" >RPat</A > l]</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3APExplTypeArg" >PExplTypeArg</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AQName" >QName</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AType" >Type</A > l)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3APQuasiQuote" >PQuasiQuote</A > l <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Char.html#t%3AString" >String</A > <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Char.html#t%3AString" >String</A ></TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3APBangPat" >PBangPat</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3APat" >Pat</A > l)</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%3APatField" >PatField</A > l </TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="decl" >= <A HREF="#v%3APFieldPat" >PFieldPat</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AQName" >QName</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3APat" >Pat</A > l)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3APFieldPun" >PFieldPun</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AName" >Name</A > l)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3APFieldWildcard" >PFieldWildcard</A > l</TD ></TR ></TABLE ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >data</SPAN > <A HREF="#t%3APXAttr" >PXAttr</A > l = <A HREF="#v%3APXAttr" >PXAttr</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AXName" >XName</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3APat" >Pat</A > l)</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%3ARPat" >RPat</A > l </TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="decl" >= <A HREF="#v%3ARPOp" >RPOp</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ARPat" >RPat</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ARPatOp" >RPatOp</A > l)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3ARPEither" >RPEither</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ARPat" >RPat</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ARPat" >RPat</A > l)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3ARPSeq" >RPSeq</A > l [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ARPat" >RPat</A > l]</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3ARPGuard" >RPGuard</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3APat" >Pat</A > l) [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AStmt" >Stmt</A > l]</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3ARPCAs" >RPCAs</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AName" >Name</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ARPat" >RPat</A > l)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3ARPAs" >RPAs</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AName" >Name</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ARPat" >RPat</A > l)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3ARPParen" >RPParen</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ARPat" >RPat</A > l)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3ARPPat" >RPPat</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3APat" >Pat</A > l)</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%3ARPatOp" >RPatOp</A > l </TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="decl" >= <A HREF="#v%3ARPStar" >RPStar</A > l</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3ARPStarG" >RPStarG</A > l</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3ARPPlus" >RPPlus</A > l</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3ARPPlusG" >RPPlusG</A > l</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3ARPOpt" >RPOpt</A > l</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3ARPOptG" >RPOptG</A > l</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%3ALiteral" >Literal</A > l </TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="decl" >= <A HREF="#v%3AChar" >Char</A > l <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Char.html#t%3AChar" >Char</A > <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Char.html#t%3AString" >String</A ></TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AString" >String</A > l <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Char.html#t%3AString" >String</A > <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Char.html#t%3AString" >String</A ></TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AInt" >Int</A > l <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Prelude.html#t%3AInteger" >Integer</A > <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Char.html#t%3AString" >String</A ></TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AFrac" >Frac</A > l <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Prelude.html#t%3ARational" >Rational</A > <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Char.html#t%3AString" >String</A ></TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3APrimInt" >PrimInt</A > l <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Prelude.html#t%3AInteger" >Integer</A > <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Char.html#t%3AString" >String</A ></TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3APrimWord" >PrimWord</A > l <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Prelude.html#t%3AInteger" >Integer</A > <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Char.html#t%3AString" >String</A ></TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3APrimFloat" >PrimFloat</A > l <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Prelude.html#t%3ARational" >Rational</A > <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Char.html#t%3AString" >String</A ></TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3APrimDouble" >PrimDouble</A > l <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Prelude.html#t%3ARational" >Rational</A > <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Char.html#t%3AString" >String</A ></TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3APrimChar" >PrimChar</A > l <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Char.html#t%3AChar" >Char</A > <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Char.html#t%3AString" >String</A ></TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3APrimString" >PrimString</A > l <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Char.html#t%3AString" >String</A > <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Char.html#t%3AString" >String</A ></TD ></TR ></TABLE ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >data</SPAN > <A HREF="#t%3AModuleName" >ModuleName</A > l = <A HREF="#v%3AModuleName" >ModuleName</A > l <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Char.html#t%3AString" >String</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%3AQName" >QName</A > l </TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="decl" >= <A HREF="#v%3AQual" >Qual</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AModuleName" >ModuleName</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AName" >Name</A > l)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AUnQual" >UnQual</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AName" >Name</A > l)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3ASpecial" >Special</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ASpecialCon" >SpecialCon</A > l)</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%3AName" >Name</A > l </TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="decl" >= <A HREF="#v%3AIdent" >Ident</A > l <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Char.html#t%3AString" >String</A ></TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3ASymbol" >Symbol</A > l <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Char.html#t%3AString" >String</A ></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%3AQOp" >QOp</A > l </TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="decl" >= <A HREF="#v%3AQVarOp" >QVarOp</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AQName" >QName</A > l)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AQConOp" >QConOp</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AQName" >QName</A > l)</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%3AOp" >Op</A > l </TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="decl" >= <A HREF="#v%3AVarOp" >VarOp</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AName" >Name</A > l)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AConOp" >ConOp</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AName" >Name</A > l)</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%3ASpecialCon" >SpecialCon</A > l </TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="decl" >= <A HREF="#v%3AUnitCon" >UnitCon</A > l</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AListCon" >ListCon</A > l</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AFunCon" >FunCon</A > l</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3ATupleCon" >TupleCon</A > l <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ABoxed" >Boxed</A > <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Int.html#t%3AInt" >Int</A ></TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3ACons" >Cons</A > l</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AUnboxedSingleCon" >UnboxedSingleCon</A > l</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%3ACName" >CName</A > l </TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="decl" >= <A HREF="#v%3AVarName" >VarName</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AName" >Name</A > l)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AConName" >ConName</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AName" >Name</A > l)</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%3AIPName" >IPName</A > l </TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="decl" >= <A HREF="#v%3AIPDup" >IPDup</A > l <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Char.html#t%3AString" >String</A ></TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AIPLin" >IPLin</A > l <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Char.html#t%3AString" >String</A ></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%3AXName" >XName</A > l </TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="decl" >= <A HREF="#v%3AXName" >XName</A > l <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Char.html#t%3AString" >String</A ></TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AXDomName" >XDomName</A > l <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Char.html#t%3AString" >String</A > <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Char.html#t%3AString" >String</A ></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%3ABracket" >Bracket</A > l </TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="decl" >= <A HREF="#v%3AExpBracket" >ExpBracket</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3APatBracket" >PatBracket</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3APat" >Pat</A > l)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3ATypeBracket" >TypeBracket</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AType" >Type</A > l)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3ADeclBracket" >DeclBracket</A > l [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ADecl" >Decl</A > l]</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%3ASplice" >Splice</A > l </TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="decl" >= <A HREF="#v%3AIdSplice" >IdSplice</A > l <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Char.html#t%3AString" >String</A ></TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AParenSplice" >ParenSplice</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l)</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%3ASafety" >Safety</A > l </TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="decl" >= <A HREF="#v%3APlayRisky" >PlayRisky</A > l</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3APlaySafe" >PlaySafe</A > l <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Bool.html#t%3ABool" >Bool</A ></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%3ACallConv" >CallConv</A > l </TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="decl" >= <A HREF="#v%3AStdCall" >StdCall</A > l</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3ACCall" >CCall</A > l</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%3AModulePragma" >ModulePragma</A > l </TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="decl" >= <A HREF="#v%3ALanguagePragma" >LanguagePragma</A > l [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AName" >Name</A > l]</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AOptionsPragma" >OptionsPragma</A > l (<A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Maybe.html#t%3AMaybe" >Maybe</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ATool" >Tool</A >) <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Char.html#t%3AString" >String</A ></TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AAnnModulePragma" >AnnModulePragma</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotation" >Annotation</A > l)</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%3ATool" >Tool</A > </TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="decl" >= <A HREF="#v%3AGHC" >GHC</A ></TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AHUGS" >HUGS</A ></TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3ANHC98" >NHC98</A ></TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AYHC" >YHC</A ></TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AHADDOCK" >HADDOCK</A ></TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AUnknownTool" >UnknownTool</A > <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Char.html#t%3AString" >String</A ></TD ></TR ></TABLE ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >data</SPAN > <A HREF="#t%3ARule" >Rule</A > l = <A HREF="#v%3ARule" >Rule</A > l <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Char.html#t%3AString" >String</A > (<A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Maybe.html#t%3AMaybe" >Maybe</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AActivation" >Activation</A > l)) (<A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Maybe.html#t%3AMaybe" >Maybe</A > [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ARuleVar" >RuleVar</A > l]) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l)</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%3ARuleVar" >RuleVar</A > l </TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="decl" >= <A HREF="#v%3ARuleVar" >RuleVar</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AName" >Name</A > l)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3ATypedRuleVar" >TypedRuleVar</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AName" >Name</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AType" >Type</A > l)</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%3AActivation" >Activation</A > l </TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="decl" >= <A HREF="#v%3AActiveFrom" >ActiveFrom</A > l <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Int.html#t%3AInt" >Int</A ></TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AActiveUntil" >ActiveUntil</A > l <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Int.html#t%3AInt" >Int</A ></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%3AAnnotation" >Annotation</A > l </TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="decl" >= <A HREF="#v%3AAnn" >Ann</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AName" >Name</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3ATypeAnn" >TypeAnn</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AName" >Name</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l)</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AModuleAnn" >ModuleAnn</A > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l)</TD ></TR ></TABLE ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3Aprelude_mod" >prelude_mod</A > :: l -> <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AModuleName" >ModuleName</A > l</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3Amain_mod" >main_mod</A > :: l -> <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AModuleName" >ModuleName</A > l</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3Amain_name" >main_name</A > :: l -> <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AName" >Name</A > l</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3Aunit_con_name" >unit_con_name</A > :: l -> <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AQName" >QName</A > l</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3Atuple_con_name" >tuple_con_name</A > :: l -> <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ABoxed" >Boxed</A > -> <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Int.html#t%3AInt" >Int</A > -> <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AQName" >QName</A > l</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3Alist_cons_name" >list_cons_name</A > :: l -> <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AQName" >QName</A > l</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3Aunboxed_singleton_con_name" >unboxed_singleton_con_name</A > :: l -> <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AQName" >QName</A > l</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3Aunit_con" >unit_con</A > :: l -> <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3Atuple_con" >tuple_con</A > :: l -> <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ABoxed" >Boxed</A > -> <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Int.html#t%3AInt" >Int</A > -> <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3Aunboxed_singleton_con" >unboxed_singleton_con</A > :: l -> <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3Aas_name" >as_name</A > :: l -> <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AName" >Name</A > l</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3Aqualified_name" >qualified_name</A > :: l -> <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AName" >Name</A > l</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3Ahiding_name" >hiding_name</A > :: l -> <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AName" >Name</A > l</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3Aminus_name" >minus_name</A > :: l -> <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AName" >Name</A > l</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3Abang_name" >bang_name</A > :: l -> <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AName" >Name</A > l</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3Adot_name" >dot_name</A > :: l -> <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AName" >Name</A > l</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3Astar_name" >star_name</A > :: l -> <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AName" >Name</A > l</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3Aexport_name" >export_name</A > :: l -> <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AName" >Name</A > l</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3Asafe_name" >safe_name</A > :: l -> <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AName" >Name</A > l</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3Aunsafe_name" >unsafe_name</A > :: l -> <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AName" >Name</A > l</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3Athreadsafe_name" >threadsafe_name</A > :: l -> <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AName" >Name</A > l</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3Astdcall_name" >stdcall_name</A > :: l -> <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AName" >Name</A > l</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3Accall_name" >ccall_name</A > :: l -> <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AName" >Name</A > l</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3Aunit_tycon_name" >unit_tycon_name</A > :: l -> <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AQName" >QName</A > l</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3Afun_tycon_name" >fun_tycon_name</A > :: l -> <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AQName" >QName</A > l</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3Alist_tycon_name" >list_tycon_name</A > :: l -> <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AQName" >QName</A > l</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3Atuple_tycon_name" >tuple_tycon_name</A > :: l -> <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ABoxed" >Boxed</A > -> <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Int.html#t%3AInt" >Int</A > -> <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AQName" >QName</A > l</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3Aunboxed_singleton_tycon_name" >unboxed_singleton_tycon_name</A > :: l -> <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AQName" >QName</A > l</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3Aunit_tycon" >unit_tycon</A > :: l -> <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AType" >Type</A > l</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3Afun_tycon" >fun_tycon</A > :: l -> <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AType" >Type</A > l</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3Alist_tycon" >list_tycon</A > :: l -> <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AType" >Type</A > l</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3Atuple_tycon" >tuple_tycon</A > :: l -> <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ABoxed" >Boxed</A > -> <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Int.html#t%3AInt" >Int</A > -> <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AType" >Type</A > l</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3Aunboxed_singleton_tycon" >unboxed_singleton_tycon</A > :: l -> <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AType" >Type</A > l</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >class</SPAN > <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Control-Monad.html#t%3AFunctor" >Functor</A > ast => <A HREF="#t%3AAnnotated" >Annotated</A > ast <SPAN CLASS="keyword" >where</SPAN ></TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="decl" ><A HREF="#v%3Aann" >ann</A > :: ast l -> l</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3Aamap" >amap</A > :: (l -> l) -> ast l -> ast l</TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3A%3D~%3D" >(=~=)</A > :: (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotated" >Annotated</A > a, <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > (a <A HREF="/usr/share/doc/ghc/html/libraries/ghc-prim-0.2.0.0/GHC-Unit.html#t%3A%28%29" >()</A >)) => a l1 -> a l2 -> <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Bool.html#t%3ABool" >Bool</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" >Modules </A ></A ></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:Module" ><A NAME="t%3AModule" ></A ></A ><B >Module</B > l </TD ><TD CLASS="declbut" ><A HREF="src/Language-Haskell-Exts-Annotated-Syntax.html#Module" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="ndoc" >A complete Haskell source module. </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:Module" ><A NAME="v%3AModule" ></A ></A ><B >Module</B > l (<A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Maybe.html#t%3AMaybe" >Maybe</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AModuleHead" >ModuleHead</A > l)) [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AModulePragma" >ModulePragma</A > l] [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AImportDecl" >ImportDecl</A > l] [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ADecl" >Decl</A > l]</TD ><TD CLASS="rdoc" >an ordinary Haskell module </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:XmlPage" ><A NAME="v%3AXmlPage" ></A ></A ><B >XmlPage</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AModuleName" >ModuleName</A > l) [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AModulePragma" >ModulePragma</A > l] (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AXName" >XName</A > l) [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AXAttr" >XAttr</A > l] (<A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Maybe.html#t%3AMaybe" >Maybe</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l)) [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l]</TD ><TD CLASS="rdoc" >a module consisting of a single XML document. The ModuleName never appears in the source but is needed for semantic purposes, it will be the same as the file name. </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:XmlHybrid" ><A NAME="v%3AXmlHybrid" ></A ></A ><B >XmlHybrid</B > l (<A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Maybe.html#t%3AMaybe" >Maybe</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AModuleHead" >ModuleHead</A > l)) [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AModulePragma" >ModulePragma</A > l] [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AImportDecl" >ImportDecl</A > l] [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ADecl" >Decl</A > l] (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AXName" >XName</A > l) [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AXAttr" >XAttr</A > l] (<A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Maybe.html#t%3AMaybe" >Maybe</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l)) [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l]</TD ><TD CLASS="rdoc" >a hybrid module combining an XML document with an ordinary module </TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="section4" ><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'i:Module')" ALT="show/hide" > Instances</TD ></TR ><TR ><TD CLASS="body" ><DIV ID="i:Module" STYLE="display:block;" ><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0" ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Control-Monad.html#t%3AFunctor" >Functor</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AModule" >Module</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Typeable.html#t%3ATypeable1" >Typeable1</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AModule" >Module</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotated" >Annotated</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AModule" >Module</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-ExactPrint.html#t%3AExactP" >ExactP</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AModule" >Module</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Fixity.html#t%3AAppFixity" >AppFixity</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AModule" >Module</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AModule" >Module</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Data.html#t%3AData" >Data</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Data.html#t%3AData" >Data</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AModule" >Module</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AModule" >Module</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Text-Show.html#t%3AShow" >Show</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Text-Show.html#t%3AShow" >Show</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AModule" >Module</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-SrcLoc.html#t%3ASrcInfo" >SrcInfo</A > pos => <A HREF="Language-Haskell-Exts-Pretty.html#t%3APretty" >Pretty</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AModule" >Module</A > pos)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-SrcLoc.html#t%3ASrcInfo" >SrcInfo</A > loc => <A HREF="Language-Haskell-Exts-Parser.html#t%3AParseable" >Parseable</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AModule" >Module</A > loc)</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:ModuleHead" ><A NAME="t%3AModuleHead" ></A ></A ><B >ModuleHead</B > l </TD ><TD CLASS="declbut" ><A HREF="src/Language-Haskell-Exts-Annotated-Syntax.html#ModuleHead" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="ndoc" >The head of a module, including the name and export specification. </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:ModuleHead" ><A NAME="v%3AModuleHead" ></A ></A ><B >ModuleHead</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AModuleName" >ModuleName</A > l) (<A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Maybe.html#t%3AMaybe" >Maybe</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AWarningText" >WarningText</A > l)) (<A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Maybe.html#t%3AMaybe" >Maybe</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExportSpecList" >ExportSpecList</A > l))</TD ><TD CLASS="rdoc" ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="section4" ><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'i:ModuleHead')" ALT="show/hide" > Instances</TD ></TR ><TR ><TD CLASS="body" ><DIV ID="i:ModuleHead" STYLE="display:block;" ><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0" ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Control-Monad.html#t%3AFunctor" >Functor</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AModuleHead" >ModuleHead</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Typeable.html#t%3ATypeable1" >Typeable1</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AModuleHead" >ModuleHead</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotated" >Annotated</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AModuleHead" >ModuleHead</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-ExactPrint.html#t%3AExactP" >ExactP</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AModuleHead" >ModuleHead</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AModuleHead" >ModuleHead</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Data.html#t%3AData" >Data</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Data.html#t%3AData" >Data</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AModuleHead" >ModuleHead</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AModuleHead" >ModuleHead</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Text-Show.html#t%3AShow" >Show</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Text-Show.html#t%3AShow" >Show</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AModuleHead" >ModuleHead</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Pretty.html#t%3APretty" >Pretty</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AModuleHead" >ModuleHead</A > l)</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:WarningText" ><A NAME="t%3AWarningText" ></A ></A ><B >WarningText</B > l </TD ><TD CLASS="declbut" ><A HREF="src/Language-Haskell-Exts-Annotated-Syntax.html#WarningText" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="ndoc" >Warning text to optionally use in the module header of e.g. a deprecated module. </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:DeprText" ><A NAME="v%3ADeprText" ></A ></A ><B >DeprText</B > l <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Char.html#t%3AString" >String</A ></TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:WarnText" ><A NAME="v%3AWarnText" ></A ></A ><B >WarnText</B > l <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Char.html#t%3AString" >String</A ></TD ><TD CLASS="rdoc" ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="section4" ><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'i:WarningText')" ALT="show/hide" > Instances</TD ></TR ><TR ><TD CLASS="body" ><DIV ID="i:WarningText" STYLE="display:block;" ><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0" ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Control-Monad.html#t%3AFunctor" >Functor</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AWarningText" >WarningText</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Typeable.html#t%3ATypeable1" >Typeable1</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AWarningText" >WarningText</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotated" >Annotated</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AWarningText" >WarningText</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-ExactPrint.html#t%3AExactP" >ExactP</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AWarningText" >WarningText</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AWarningText" >WarningText</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Data.html#t%3AData" >Data</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Data.html#t%3AData" >Data</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AWarningText" >WarningText</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AWarningText" >WarningText</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Text-Show.html#t%3AShow" >Show</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Text-Show.html#t%3AShow" >Show</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AWarningText" >WarningText</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Pretty.html#t%3APretty" >Pretty</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AWarningText" >WarningText</A > l)</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:ExportSpecList" ><A NAME="t%3AExportSpecList" ></A ></A ><B >ExportSpecList</B > l </TD ><TD CLASS="declbut" ><A HREF="src/Language-Haskell-Exts-Annotated-Syntax.html#ExportSpecList" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="ndoc" >An explicit export specification. </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:ExportSpecList" ><A NAME="v%3AExportSpecList" ></A ></A ><B >ExportSpecList</B > l [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExportSpec" >ExportSpec</A > l]</TD ><TD CLASS="rdoc" ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="section4" ><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'i:ExportSpecList')" ALT="show/hide" > Instances</TD ></TR ><TR ><TD CLASS="body" ><DIV ID="i:ExportSpecList" STYLE="display:block;" ><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0" ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Control-Monad.html#t%3AFunctor" >Functor</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExportSpecList" >ExportSpecList</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Typeable.html#t%3ATypeable1" >Typeable1</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExportSpecList" >ExportSpecList</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotated" >Annotated</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExportSpecList" >ExportSpecList</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-ExactPrint.html#t%3AExactP" >ExactP</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExportSpecList" >ExportSpecList</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExportSpecList" >ExportSpecList</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Data.html#t%3AData" >Data</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Data.html#t%3AData" >Data</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExportSpecList" >ExportSpecList</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExportSpecList" >ExportSpecList</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Text-Show.html#t%3AShow" >Show</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Text-Show.html#t%3AShow" >Show</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExportSpecList" >ExportSpecList</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Pretty.html#t%3APretty" >Pretty</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExportSpecList" >ExportSpecList</A > l)</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:ExportSpec" ><A NAME="t%3AExportSpec" ></A ></A ><B >ExportSpec</B > l </TD ><TD CLASS="declbut" ><A HREF="src/Language-Haskell-Exts-Annotated-Syntax.html#ExportSpec" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="ndoc" >An item in a module's export specification. </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:EVar" ><A NAME="v%3AEVar" ></A ></A ><B >EVar</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AQName" >QName</A > l)</TD ><TD CLASS="rdoc" >variable </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:EAbs" ><A NAME="v%3AEAbs" ></A ></A ><B >EAbs</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AQName" >QName</A > l)</TD ><TD CLASS="rdoc" ><TT >T</TT >: a class or datatype exported abstractly, or a type synonym. </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:EThingAll" ><A NAME="v%3AEThingAll" ></A ></A ><B >EThingAll</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AQName" >QName</A > l)</TD ><TD CLASS="rdoc" ><TT >T(..)</TT >: a class exported with all of its methods, or a datatype exported with all of its constructors. </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:EThingWith" ><A NAME="v%3AEThingWith" ></A ></A ><B >EThingWith</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AQName" >QName</A > l) [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ACName" >CName</A > l]</TD ><TD CLASS="rdoc" ><TT >T(C_1,...,C_n)</TT >: a class exported with some of its methods, or a datatype exported with some of its constructors. </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:EModuleContents" ><A NAME="v%3AEModuleContents" ></A ></A ><B >EModuleContents</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AModuleName" >ModuleName</A > l)</TD ><TD CLASS="rdoc" ><TT >module M</TT >: re-export a module. </TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="section4" ><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'i:ExportSpec')" ALT="show/hide" > Instances</TD ></TR ><TR ><TD CLASS="body" ><DIV ID="i:ExportSpec" STYLE="display:block;" ><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0" ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Control-Monad.html#t%3AFunctor" >Functor</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExportSpec" >ExportSpec</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Typeable.html#t%3ATypeable1" >Typeable1</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExportSpec" >ExportSpec</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotated" >Annotated</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExportSpec" >ExportSpec</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-ExactPrint.html#t%3AExactP" >ExactP</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExportSpec" >ExportSpec</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExportSpec" >ExportSpec</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Data.html#t%3AData" >Data</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Data.html#t%3AData" >Data</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExportSpec" >ExportSpec</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExportSpec" >ExportSpec</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Text-Show.html#t%3AShow" >Show</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Text-Show.html#t%3AShow" >Show</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExportSpec" >ExportSpec</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Pretty.html#t%3APretty" >Pretty</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExportSpec" >ExportSpec</A > l)</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:ImportDecl" ><A NAME="t%3AImportDecl" ></A ></A ><B >ImportDecl</B > l </TD ><TD CLASS="declbut" ><A HREF="src/Language-Haskell-Exts-Annotated-Syntax.html#ImportDecl" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="ndoc" >An import declaration. </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:ImportDecl" ><A NAME="v%3AImportDecl" ></A ></A ><B >ImportDecl</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:importAnn" ><A NAME="v%3AimportAnn" ></A ></A ><B >importAnn</B > :: l</TD ><TD CLASS="rdoc" >annotation, used by parser for position of the <TT >import</TT > keyword. </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:importModule" ><A NAME="v%3AimportModule" ></A ></A ><B >importModule</B > :: <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AModuleName" >ModuleName</A > l</TD ><TD CLASS="rdoc" >name of the module imported. </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:importQualified" ><A NAME="v%3AimportQualified" ></A ></A ><B >importQualified</B > :: <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Bool.html#t%3ABool" >Bool</A ></TD ><TD CLASS="rdoc" >imported <TT >qualified</TT >? </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:importSrc" ><A NAME="v%3AimportSrc" ></A ></A ><B >importSrc</B > :: <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Bool.html#t%3ABool" >Bool</A ></TD ><TD CLASS="rdoc" >imported with <TT >{-# SOURCE #-}</TT >? </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:importPkg" ><A NAME="v%3AimportPkg" ></A ></A ><B >importPkg</B > :: <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Maybe.html#t%3AMaybe" >Maybe</A > <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Char.html#t%3AString" >String</A ></TD ><TD CLASS="rdoc" >imported with explicit package name </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:importAs" ><A NAME="v%3AimportAs" ></A ></A ><B >importAs</B > :: <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Maybe.html#t%3AMaybe" >Maybe</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AModuleName" >ModuleName</A > l)</TD ><TD CLASS="rdoc" >optional alias name in an <TT >as</TT > clause. </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:importSpecs" ><A NAME="v%3AimportSpecs" ></A ></A ><B >importSpecs</B > :: <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Maybe.html#t%3AMaybe" >Maybe</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AImportSpecList" >ImportSpecList</A > l)</TD ><TD CLASS="rdoc" >optional list of import specifications. </TD ></TR ></TABLE ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="section4" ><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'i:ImportDecl')" ALT="show/hide" > Instances</TD ></TR ><TR ><TD CLASS="body" ><DIV ID="i:ImportDecl" STYLE="display:block;" ><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0" ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Control-Monad.html#t%3AFunctor" >Functor</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AImportDecl" >ImportDecl</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Typeable.html#t%3ATypeable1" >Typeable1</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AImportDecl" >ImportDecl</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotated" >Annotated</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AImportDecl" >ImportDecl</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-ExactPrint.html#t%3AExactP" >ExactP</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AImportDecl" >ImportDecl</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AImportDecl" >ImportDecl</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Data.html#t%3AData" >Data</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Data.html#t%3AData" >Data</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AImportDecl" >ImportDecl</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AImportDecl" >ImportDecl</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Text-Show.html#t%3AShow" >Show</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Text-Show.html#t%3AShow" >Show</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AImportDecl" >ImportDecl</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-SrcLoc.html#t%3ASrcInfo" >SrcInfo</A > pos => <A HREF="Language-Haskell-Exts-Pretty.html#t%3APretty" >Pretty</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AImportDecl" >ImportDecl</A > pos)</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:ImportSpecList" ><A NAME="t%3AImportSpecList" ></A ></A ><B >ImportSpecList</B > l </TD ><TD CLASS="declbut" ><A HREF="src/Language-Haskell-Exts-Annotated-Syntax.html#ImportSpecList" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="ndoc" >An explicit import specification list. </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:ImportSpecList" ><A NAME="v%3AImportSpecList" ></A ></A ><B >ImportSpecList</B > l <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Bool.html#t%3ABool" >Bool</A > [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AImportSpec" >ImportSpec</A > l]</TD ><TD CLASS="rdoc" ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="section4" ><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'i:ImportSpecList')" ALT="show/hide" > Instances</TD ></TR ><TR ><TD CLASS="body" ><DIV ID="i:ImportSpecList" STYLE="display:block;" ><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0" ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Control-Monad.html#t%3AFunctor" >Functor</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AImportSpecList" >ImportSpecList</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Typeable.html#t%3ATypeable1" >Typeable1</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AImportSpecList" >ImportSpecList</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotated" >Annotated</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AImportSpecList" >ImportSpecList</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-ExactPrint.html#t%3AExactP" >ExactP</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AImportSpecList" >ImportSpecList</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AImportSpecList" >ImportSpecList</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Data.html#t%3AData" >Data</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Data.html#t%3AData" >Data</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AImportSpecList" >ImportSpecList</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AImportSpecList" >ImportSpecList</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Text-Show.html#t%3AShow" >Show</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Text-Show.html#t%3AShow" >Show</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AImportSpecList" >ImportSpecList</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Pretty.html#t%3APretty" >Pretty</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AImportSpecList" >ImportSpecList</A > l)</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:ImportSpec" ><A NAME="t%3AImportSpec" ></A ></A ><B >ImportSpec</B > l </TD ><TD CLASS="declbut" ><A HREF="src/Language-Haskell-Exts-Annotated-Syntax.html#ImportSpec" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="ndoc" >An import specification, representing a single explicit item imported (or hidden) from a module. </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:IVar" ><A NAME="v%3AIVar" ></A ></A ><B >IVar</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AName" >Name</A > l)</TD ><TD CLASS="rdoc" >variable </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:IAbs" ><A NAME="v%3AIAbs" ></A ></A ><B >IAbs</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AName" >Name</A > l)</TD ><TD CLASS="rdoc" ><TT >T</TT >: the name of a class, datatype or type synonym. </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:IThingAll" ><A NAME="v%3AIThingAll" ></A ></A ><B >IThingAll</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AName" >Name</A > l)</TD ><TD CLASS="rdoc" ><TT >T(..)</TT >: a class imported with all of its methods, or a datatype imported with all of its constructors. </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:IThingWith" ><A NAME="v%3AIThingWith" ></A ></A ><B >IThingWith</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AName" >Name</A > l) [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ACName" >CName</A > l]</TD ><TD CLASS="rdoc" ><TT >T(C_1,...,C_n)</TT >: a class imported with some of its methods, or a datatype imported with some of its constructors. </TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="section4" ><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'i:ImportSpec')" ALT="show/hide" > Instances</TD ></TR ><TR ><TD CLASS="body" ><DIV ID="i:ImportSpec" STYLE="display:block;" ><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0" ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Control-Monad.html#t%3AFunctor" >Functor</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AImportSpec" >ImportSpec</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Typeable.html#t%3ATypeable1" >Typeable1</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AImportSpec" >ImportSpec</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotated" >Annotated</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AImportSpec" >ImportSpec</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-ExactPrint.html#t%3AExactP" >ExactP</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AImportSpec" >ImportSpec</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AImportSpec" >ImportSpec</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Data.html#t%3AData" >Data</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Data.html#t%3AData" >Data</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AImportSpec" >ImportSpec</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AImportSpec" >ImportSpec</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Text-Show.html#t%3AShow" >Show</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Text-Show.html#t%3AShow" >Show</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AImportSpec" >ImportSpec</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Pretty.html#t%3APretty" >Pretty</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AImportSpec" >ImportSpec</A > l)</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:Assoc" ><A NAME="t%3AAssoc" ></A ></A ><B >Assoc</B > l </TD ><TD CLASS="declbut" ><A HREF="src/Language-Haskell-Exts-Annotated-Syntax.html#Assoc" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="ndoc" >Associativity of an operator. </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:AssocNone" ><A NAME="v%3AAssocNone" ></A ></A ><B >AssocNone</B > l</TD ><TD CLASS="rdoc" >non-associative operator (declared with <TT >infix</TT >) </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:AssocLeft" ><A NAME="v%3AAssocLeft" ></A ></A ><B >AssocLeft</B > l</TD ><TD CLASS="rdoc" >left-associative operator (declared with <TT >infixl</TT >). </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:AssocRight" ><A NAME="v%3AAssocRight" ></A ></A ><B >AssocRight</B > l</TD ><TD CLASS="rdoc" >right-associative operator (declared with <TT >infixr</TT >) </TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="section4" ><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'i:Assoc')" ALT="show/hide" > Instances</TD ></TR ><TR ><TD CLASS="body" ><DIV ID="i:Assoc" STYLE="display:block;" ><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0" ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Control-Monad.html#t%3AFunctor" >Functor</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAssoc" >Assoc</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Typeable.html#t%3ATypeable1" >Typeable1</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAssoc" >Assoc</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotated" >Annotated</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAssoc" >Assoc</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-ExactPrint.html#t%3AExactP" >ExactP</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAssoc" >Assoc</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAssoc" >Assoc</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Data.html#t%3AData" >Data</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Data.html#t%3AData" >Data</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAssoc" >Assoc</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAssoc" >Assoc</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Text-Show.html#t%3AShow" >Show</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Text-Show.html#t%3AShow" >Show</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAssoc" >Assoc</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Pretty.html#t%3APretty" >Pretty</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAssoc" >Assoc</A > l)</TD ></TR ></TABLE ></DIV ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="section1" ><A NAME="2" ><A NAME="2" >Declarations </A ></A ></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:Decl" ><A NAME="t%3ADecl" ></A ></A ><B >Decl</B > l </TD ><TD CLASS="declbut" ><A HREF="src/Language-Haskell-Exts-Annotated-Syntax.html#Decl" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="ndoc" >A top-level declaration. </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:TypeDecl" ><A NAME="v%3ATypeDecl" ></A ></A ><B >TypeDecl</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ADeclHead" >DeclHead</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AType" >Type</A > l)</TD ><TD CLASS="rdoc" >A type declaration </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:TypeFamDecl" ><A NAME="v%3ATypeFamDecl" ></A ></A ><B >TypeFamDecl</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ADeclHead" >DeclHead</A > l) (<A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Maybe.html#t%3AMaybe" >Maybe</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AKind" >Kind</A > l))</TD ><TD CLASS="rdoc" >A type family declaration </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:DataDecl" ><A NAME="v%3ADataDecl" ></A ></A ><B >DataDecl</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ADataOrNew" >DataOrNew</A > l) (<A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Maybe.html#t%3AMaybe" >Maybe</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AContext" >Context</A > l)) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ADeclHead" >DeclHead</A > l) [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AQualConDecl" >QualConDecl</A > l] (<A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Maybe.html#t%3AMaybe" >Maybe</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ADeriving" >Deriving</A > l))</TD ><TD CLASS="rdoc" >A data OR newtype declaration </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:GDataDecl" ><A NAME="v%3AGDataDecl" ></A ></A ><B >GDataDecl</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ADataOrNew" >DataOrNew</A > l) (<A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Maybe.html#t%3AMaybe" >Maybe</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AContext" >Context</A > l)) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ADeclHead" >DeclHead</A > l) (<A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Maybe.html#t%3AMaybe" >Maybe</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AKind" >Kind</A > l)) [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AGadtDecl" >GadtDecl</A > l] (<A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Maybe.html#t%3AMaybe" >Maybe</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ADeriving" >Deriving</A > l))</TD ><TD CLASS="rdoc" >A data OR newtype declaration, GADT style </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:DataFamDecl" ><A NAME="v%3ADataFamDecl" ></A ></A ><B >DataFamDecl</B > l (<A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Maybe.html#t%3AMaybe" >Maybe</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AContext" >Context</A > l)) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ADeclHead" >DeclHead</A > l) (<A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Maybe.html#t%3AMaybe" >Maybe</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AKind" >Kind</A > l))</TD ><TD CLASS="rdoc" >A data family declaration </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:TypeInsDecl" ><A NAME="v%3ATypeInsDecl" ></A ></A ><B >TypeInsDecl</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AType" >Type</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AType" >Type</A > l)</TD ><TD CLASS="rdoc" >A type family instance declaration </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:DataInsDecl" ><A NAME="v%3ADataInsDecl" ></A ></A ><B >DataInsDecl</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ADataOrNew" >DataOrNew</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AType" >Type</A > l) [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AQualConDecl" >QualConDecl</A > l] (<A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Maybe.html#t%3AMaybe" >Maybe</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ADeriving" >Deriving</A > l))</TD ><TD CLASS="rdoc" >A data family instance declaration </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:GDataInsDecl" ><A NAME="v%3AGDataInsDecl" ></A ></A ><B >GDataInsDecl</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ADataOrNew" >DataOrNew</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AType" >Type</A > l) (<A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Maybe.html#t%3AMaybe" >Maybe</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AKind" >Kind</A > l)) [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AGadtDecl" >GadtDecl</A > l] (<A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Maybe.html#t%3AMaybe" >Maybe</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ADeriving" >Deriving</A > l))</TD ><TD CLASS="rdoc" >A data family instance declaration, GADT style </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:ClassDecl" ><A NAME="v%3AClassDecl" ></A ></A ><B >ClassDecl</B > l (<A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Maybe.html#t%3AMaybe" >Maybe</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AContext" >Context</A > l)) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ADeclHead" >DeclHead</A > l) [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AFunDep" >FunDep</A > l] (<A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Maybe.html#t%3AMaybe" >Maybe</A > [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AClassDecl" >ClassDecl</A > l])</TD ><TD CLASS="rdoc" >A declaration of a type class </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:InstDecl" ><A NAME="v%3AInstDecl" ></A ></A ><B >InstDecl</B > l (<A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Maybe.html#t%3AMaybe" >Maybe</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AContext" >Context</A > l)) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AInstHead" >InstHead</A > l) (<A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Maybe.html#t%3AMaybe" >Maybe</A > [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AInstDecl" >InstDecl</A > l])</TD ><TD CLASS="rdoc" >An declaration of a type class instance </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:DerivDecl" ><A NAME="v%3ADerivDecl" ></A ></A ><B >DerivDecl</B > l (<A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Maybe.html#t%3AMaybe" >Maybe</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AContext" >Context</A > l)) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AInstHead" >InstHead</A > l)</TD ><TD CLASS="rdoc" >A standalone deriving declaration </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:InfixDecl" ><A NAME="v%3AInfixDecl" ></A ></A ><B >InfixDecl</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAssoc" >Assoc</A > l) (<A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Maybe.html#t%3AMaybe" >Maybe</A > <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Int.html#t%3AInt" >Int</A >) [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AOp" >Op</A > l]</TD ><TD CLASS="rdoc" >A declaration of operator fixity </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:DefaultDecl" ><A NAME="v%3ADefaultDecl" ></A ></A ><B >DefaultDecl</B > l [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AType" >Type</A > l]</TD ><TD CLASS="rdoc" >A declaration of default types </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:SpliceDecl" ><A NAME="v%3ASpliceDecl" ></A ></A ><B >SpliceDecl</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l)</TD ><TD CLASS="rdoc" >A Template Haskell splicing declaration </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:TypeSig" ><A NAME="v%3ATypeSig" ></A ></A ><B >TypeSig</B > l [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AName" >Name</A > l] (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AType" >Type</A > l)</TD ><TD CLASS="rdoc" >A type signature declaration </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:FunBind" ><A NAME="v%3AFunBind" ></A ></A ><B >FunBind</B > l [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AMatch" >Match</A > l]</TD ><TD CLASS="rdoc" >A set of function binding clauses </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:PatBind" ><A NAME="v%3APatBind" ></A ></A ><B >PatBind</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3APat" >Pat</A > l) (<A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Maybe.html#t%3AMaybe" >Maybe</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AType" >Type</A > l)) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ARhs" >Rhs</A > l) (<A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Maybe.html#t%3AMaybe" >Maybe</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ABinds" >Binds</A > l))</TD ><TD CLASS="rdoc" >A pattern binding </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:ForImp" ><A NAME="v%3AForImp" ></A ></A ><B >ForImp</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ACallConv" >CallConv</A > l) (<A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Maybe.html#t%3AMaybe" >Maybe</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ASafety" >Safety</A > l)) (<A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Maybe.html#t%3AMaybe" >Maybe</A > <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Char.html#t%3AString" >String</A >) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AName" >Name</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AType" >Type</A > l)</TD ><TD CLASS="rdoc" >A foreign import declaration </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:ForExp" ><A NAME="v%3AForExp" ></A ></A ><B >ForExp</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ACallConv" >CallConv</A > l) (<A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Maybe.html#t%3AMaybe" >Maybe</A > <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Char.html#t%3AString" >String</A >) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AName" >Name</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AType" >Type</A > l)</TD ><TD CLASS="rdoc" >A foreign export declaration </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:RulePragmaDecl" ><A NAME="v%3ARulePragmaDecl" ></A ></A ><B >RulePragmaDecl</B > l [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ARule" >Rule</A > l]</TD ><TD CLASS="rdoc" >A RULES pragma </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:DeprPragmaDecl" ><A NAME="v%3ADeprPragmaDecl" ></A ></A ><B >DeprPragmaDecl</B > l [([<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AName" >Name</A > l], <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Char.html#t%3AString" >String</A >)]</TD ><TD CLASS="rdoc" >A DEPRECATED pragma </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:WarnPragmaDecl" ><A NAME="v%3AWarnPragmaDecl" ></A ></A ><B >WarnPragmaDecl</B > l [([<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AName" >Name</A > l], <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Char.html#t%3AString" >String</A >)]</TD ><TD CLASS="rdoc" >A WARNING pragma </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:InlineSig" ><A NAME="v%3AInlineSig" ></A ></A ><B >InlineSig</B > l <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Bool.html#t%3ABool" >Bool</A > (<A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Maybe.html#t%3AMaybe" >Maybe</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AActivation" >Activation</A > l)) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AQName" >QName</A > l)</TD ><TD CLASS="rdoc" >An INLINE pragma </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:InlineConlikeSig" ><A NAME="v%3AInlineConlikeSig" ></A ></A ><B >InlineConlikeSig</B > l (<A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Maybe.html#t%3AMaybe" >Maybe</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AActivation" >Activation</A > l)) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AQName" >QName</A > l)</TD ><TD CLASS="rdoc" >An INLINE CONLIKE pragma </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:SpecSig" ><A NAME="v%3ASpecSig" ></A ></A ><B >SpecSig</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AQName" >QName</A > l) [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AType" >Type</A > l]</TD ><TD CLASS="rdoc" >A SPECIALISE pragma </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:SpecInlineSig" ><A NAME="v%3ASpecInlineSig" ></A ></A ><B >SpecInlineSig</B > l <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Bool.html#t%3ABool" >Bool</A > (<A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Maybe.html#t%3AMaybe" >Maybe</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AActivation" >Activation</A > l)) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AQName" >QName</A > l) [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AType" >Type</A > l]</TD ><TD CLASS="rdoc" >A SPECIALISE INLINE pragma </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:InstSig" ><A NAME="v%3AInstSig" ></A ></A ><B >InstSig</B > l (<A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Maybe.html#t%3AMaybe" >Maybe</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AContext" >Context</A > l)) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AInstHead" >InstHead</A > l)</TD ><TD CLASS="rdoc" >A SPECIALISE instance pragma </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:AnnPragma" ><A NAME="v%3AAnnPragma" ></A ></A ><B >AnnPragma</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotation" >Annotation</A > l)</TD ><TD CLASS="rdoc" >An ANN pragma </TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="section4" ><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'i:Decl')" ALT="show/hide" > Instances</TD ></TR ><TR ><TD CLASS="body" ><DIV ID="i:Decl" STYLE="display:block;" ><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0" ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Control-Monad.html#t%3AFunctor" >Functor</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ADecl" >Decl</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Typeable.html#t%3ATypeable1" >Typeable1</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ADecl" >Decl</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotated" >Annotated</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ADecl" >Decl</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-ExactPrint.html#t%3AExactP" >ExactP</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ADecl" >Decl</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Fixity.html#t%3AAppFixity" >AppFixity</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ADecl" >Decl</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ADecl" >Decl</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Data.html#t%3AData" >Data</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Data.html#t%3AData" >Data</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ADecl" >Decl</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ADecl" >Decl</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Text-Show.html#t%3AShow" >Show</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Text-Show.html#t%3AShow" >Show</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ADecl" >Decl</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-SrcLoc.html#t%3ASrcInfo" >SrcInfo</A > pos => <A HREF="Language-Haskell-Exts-Pretty.html#t%3APretty" >Pretty</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ADecl" >Decl</A > pos)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-SrcLoc.html#t%3ASrcInfo" >SrcInfo</A > loc => <A HREF="Language-Haskell-Exts-Parser.html#t%3AParseable" >Parseable</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ADecl" >Decl</A > loc)</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:DeclHead" ><A NAME="t%3ADeclHead" ></A ></A ><B >DeclHead</B > l </TD ><TD CLASS="declbut" ><A HREF="src/Language-Haskell-Exts-Annotated-Syntax.html#DeclHead" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="ndoc" >The head of a type or class declaration. </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:DHead" ><A NAME="v%3ADHead" ></A ></A ><B >DHead</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AName" >Name</A > l) [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ATyVarBind" >TyVarBind</A > l]</TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:DHInfix" ><A NAME="v%3ADHInfix" ></A ></A ><B >DHInfix</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ATyVarBind" >TyVarBind</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AName" >Name</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ATyVarBind" >TyVarBind</A > l)</TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:DHParen" ><A NAME="v%3ADHParen" ></A ></A ><B >DHParen</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ADeclHead" >DeclHead</A > l)</TD ><TD CLASS="rdoc" ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="section4" ><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'i:DeclHead')" ALT="show/hide" > Instances</TD ></TR ><TR ><TD CLASS="body" ><DIV ID="i:DeclHead" STYLE="display:block;" ><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0" ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Control-Monad.html#t%3AFunctor" >Functor</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ADeclHead" >DeclHead</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Typeable.html#t%3ATypeable1" >Typeable1</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ADeclHead" >DeclHead</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotated" >Annotated</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ADeclHead" >DeclHead</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-ExactPrint.html#t%3AExactP" >ExactP</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ADeclHead" >DeclHead</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ADeclHead" >DeclHead</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Data.html#t%3AData" >Data</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Data.html#t%3AData" >Data</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ADeclHead" >DeclHead</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ADeclHead" >DeclHead</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Text-Show.html#t%3AShow" >Show</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Text-Show.html#t%3AShow" >Show</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ADeclHead" >DeclHead</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Pretty.html#t%3APretty" >Pretty</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ADeclHead" >DeclHead</A > l)</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:InstHead" ><A NAME="t%3AInstHead" ></A ></A ><B >InstHead</B > l </TD ><TD CLASS="declbut" ><A HREF="src/Language-Haskell-Exts-Annotated-Syntax.html#InstHead" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="ndoc" >The head of an instance declaration. </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:IHead" ><A NAME="v%3AIHead" ></A ></A ><B >IHead</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AQName" >QName</A > l) [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AType" >Type</A > l]</TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:IHInfix" ><A NAME="v%3AIHInfix" ></A ></A ><B >IHInfix</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AType" >Type</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AQName" >QName</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AType" >Type</A > l)</TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:IHParen" ><A NAME="v%3AIHParen" ></A ></A ><B >IHParen</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AInstHead" >InstHead</A > l)</TD ><TD CLASS="rdoc" ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="section4" ><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'i:InstHead')" ALT="show/hide" > Instances</TD ></TR ><TR ><TD CLASS="body" ><DIV ID="i:InstHead" STYLE="display:block;" ><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0" ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Control-Monad.html#t%3AFunctor" >Functor</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AInstHead" >InstHead</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Typeable.html#t%3ATypeable1" >Typeable1</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AInstHead" >InstHead</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotated" >Annotated</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AInstHead" >InstHead</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-ExactPrint.html#t%3AExactP" >ExactP</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AInstHead" >InstHead</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AInstHead" >InstHead</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Data.html#t%3AData" >Data</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Data.html#t%3AData" >Data</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AInstHead" >InstHead</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AInstHead" >InstHead</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Text-Show.html#t%3AShow" >Show</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Text-Show.html#t%3AShow" >Show</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AInstHead" >InstHead</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Pretty.html#t%3APretty" >Pretty</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AInstHead" >InstHead</A > l)</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:Binds" ><A NAME="t%3ABinds" ></A ></A ><B >Binds</B > l </TD ><TD CLASS="declbut" ><A HREF="src/Language-Haskell-Exts-Annotated-Syntax.html#Binds" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="ndoc" >A binding group inside a <TT >let</TT > or <TT >where</TT > clause. </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:BDecls" ><A NAME="v%3ABDecls" ></A ></A ><B >BDecls</B > l [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ADecl" >Decl</A > l]</TD ><TD CLASS="rdoc" >An ordinary binding group </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:IPBinds" ><A NAME="v%3AIPBinds" ></A ></A ><B >IPBinds</B > l [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AIPBind" >IPBind</A > l]</TD ><TD CLASS="rdoc" >A binding group for implicit parameters </TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="section4" ><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'i:Binds')" ALT="show/hide" > Instances</TD ></TR ><TR ><TD CLASS="body" ><DIV ID="i:Binds" STYLE="display:block;" ><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0" ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Control-Monad.html#t%3AFunctor" >Functor</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ABinds" >Binds</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Typeable.html#t%3ATypeable1" >Typeable1</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ABinds" >Binds</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotated" >Annotated</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ABinds" >Binds</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-ExactPrint.html#t%3AExactP" >ExactP</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ABinds" >Binds</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Fixity.html#t%3AAppFixity" >AppFixity</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ABinds" >Binds</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ABinds" >Binds</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Data.html#t%3AData" >Data</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Data.html#t%3AData" >Data</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ABinds" >Binds</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ABinds" >Binds</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Text-Show.html#t%3AShow" >Show</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Text-Show.html#t%3AShow" >Show</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ABinds" >Binds</A > l)</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:IPBind" ><A NAME="t%3AIPBind" ></A ></A ><B >IPBind</B > l </TD ><TD CLASS="declbut" ><A HREF="src/Language-Haskell-Exts-Annotated-Syntax.html#IPBind" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="ndoc" >A binding of an implicit parameter. </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:IPBind" ><A NAME="v%3AIPBind" ></A ></A ><B >IPBind</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AIPName" >IPName</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l)</TD ><TD CLASS="rdoc" ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="section4" ><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'i:IPBind')" ALT="show/hide" > Instances</TD ></TR ><TR ><TD CLASS="body" ><DIV ID="i:IPBind" STYLE="display:block;" ><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0" ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Control-Monad.html#t%3AFunctor" >Functor</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AIPBind" >IPBind</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Typeable.html#t%3ATypeable1" >Typeable1</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AIPBind" >IPBind</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotated" >Annotated</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AIPBind" >IPBind</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-ExactPrint.html#t%3AExactP" >ExactP</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AIPBind" >IPBind</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Fixity.html#t%3AAppFixity" >AppFixity</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AIPBind" >IPBind</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AIPBind" >IPBind</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Data.html#t%3AData" >Data</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Data.html#t%3AData" >Data</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AIPBind" >IPBind</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AIPBind" >IPBind</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Text-Show.html#t%3AShow" >Show</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Text-Show.html#t%3AShow" >Show</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AIPBind" >IPBind</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-SrcLoc.html#t%3ASrcInfo" >SrcInfo</A > loc => <A HREF="Language-Haskell-Exts-Pretty.html#t%3APretty" >Pretty</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AIPBind" >IPBind</A > loc)</TD ></TR ></TABLE ></DIV ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="section2" ><A NAME="3" ><A NAME="3" >Type classes and instances </A ></A ></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:ClassDecl" ><A NAME="t%3AClassDecl" ></A ></A ><B >ClassDecl</B > l </TD ><TD CLASS="declbut" ><A HREF="src/Language-Haskell-Exts-Annotated-Syntax.html#ClassDecl" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="ndoc" >Declarations inside a class declaration. </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:ClsDecl" ><A NAME="v%3AClsDecl" ></A ></A ><B >ClsDecl</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ADecl" >Decl</A > l)</TD ><TD CLASS="rdoc" >ordinary declaration </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:ClsDataFam" ><A NAME="v%3AClsDataFam" ></A ></A ><B >ClsDataFam</B > l (<A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Maybe.html#t%3AMaybe" >Maybe</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AContext" >Context</A > l)) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ADeclHead" >DeclHead</A > l) (<A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Maybe.html#t%3AMaybe" >Maybe</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AKind" >Kind</A > l))</TD ><TD CLASS="rdoc" >declaration of an associated data type </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:ClsTyFam" ><A NAME="v%3AClsTyFam" ></A ></A ><B >ClsTyFam</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ADeclHead" >DeclHead</A > l) (<A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Maybe.html#t%3AMaybe" >Maybe</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AKind" >Kind</A > l))</TD ><TD CLASS="rdoc" >declaration of an associated type synonym </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:ClsTyDef" ><A NAME="v%3AClsTyDef" ></A ></A ><B >ClsTyDef</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AType" >Type</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AType" >Type</A > l)</TD ><TD CLASS="rdoc" >default choice for an associated type synonym </TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="section4" ><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'i:ClassDecl')" ALT="show/hide" > Instances</TD ></TR ><TR ><TD CLASS="body" ><DIV ID="i:ClassDecl" STYLE="display:block;" ><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0" ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Control-Monad.html#t%3AFunctor" >Functor</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AClassDecl" >ClassDecl</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Typeable.html#t%3ATypeable1" >Typeable1</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AClassDecl" >ClassDecl</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotated" >Annotated</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AClassDecl" >ClassDecl</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-ExactPrint.html#t%3AExactP" >ExactP</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AClassDecl" >ClassDecl</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Fixity.html#t%3AAppFixity" >AppFixity</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AClassDecl" >ClassDecl</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AClassDecl" >ClassDecl</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Data.html#t%3AData" >Data</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Data.html#t%3AData" >Data</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AClassDecl" >ClassDecl</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AClassDecl" >ClassDecl</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Text-Show.html#t%3AShow" >Show</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Text-Show.html#t%3AShow" >Show</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AClassDecl" >ClassDecl</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-SrcLoc.html#t%3ASrcInfo" >SrcInfo</A > loc => <A HREF="Language-Haskell-Exts-Pretty.html#t%3APretty" >Pretty</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AClassDecl" >ClassDecl</A > loc)</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:InstDecl" ><A NAME="t%3AInstDecl" ></A ></A ><B >InstDecl</B > l </TD ><TD CLASS="declbut" ><A HREF="src/Language-Haskell-Exts-Annotated-Syntax.html#InstDecl" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="ndoc" >Declarations inside an instance declaration. </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:InsDecl" ><A NAME="v%3AInsDecl" ></A ></A ><B >InsDecl</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ADecl" >Decl</A > l)</TD ><TD CLASS="rdoc" >ordinary declaration </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:InsType" ><A NAME="v%3AInsType" ></A ></A ><B >InsType</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AType" >Type</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AType" >Type</A > l)</TD ><TD CLASS="rdoc" >an associated type definition </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:InsData" ><A NAME="v%3AInsData" ></A ></A ><B >InsData</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ADataOrNew" >DataOrNew</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AType" >Type</A > l) [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AQualConDecl" >QualConDecl</A > l] (<A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Maybe.html#t%3AMaybe" >Maybe</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ADeriving" >Deriving</A > l))</TD ><TD CLASS="rdoc" >an associated data type implementation </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:InsGData" ><A NAME="v%3AInsGData" ></A ></A ><B >InsGData</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ADataOrNew" >DataOrNew</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AType" >Type</A > l) (<A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Maybe.html#t%3AMaybe" >Maybe</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AKind" >Kind</A > l)) [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AGadtDecl" >GadtDecl</A > l] (<A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Maybe.html#t%3AMaybe" >Maybe</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ADeriving" >Deriving</A > l))</TD ><TD CLASS="rdoc" >an associated data type implemented using GADT style </TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="section4" ><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'i:InstDecl')" ALT="show/hide" > Instances</TD ></TR ><TR ><TD CLASS="body" ><DIV ID="i:InstDecl" STYLE="display:block;" ><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0" ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Control-Monad.html#t%3AFunctor" >Functor</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AInstDecl" >InstDecl</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Typeable.html#t%3ATypeable1" >Typeable1</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AInstDecl" >InstDecl</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotated" >Annotated</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AInstDecl" >InstDecl</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-ExactPrint.html#t%3AExactP" >ExactP</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AInstDecl" >InstDecl</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Fixity.html#t%3AAppFixity" >AppFixity</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AInstDecl" >InstDecl</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AInstDecl" >InstDecl</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Data.html#t%3AData" >Data</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Data.html#t%3AData" >Data</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AInstDecl" >InstDecl</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AInstDecl" >InstDecl</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Text-Show.html#t%3AShow" >Show</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Text-Show.html#t%3AShow" >Show</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AInstDecl" >InstDecl</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-SrcLoc.html#t%3ASrcInfo" >SrcInfo</A > loc => <A HREF="Language-Haskell-Exts-Pretty.html#t%3APretty" >Pretty</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AInstDecl" >InstDecl</A > loc)</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:Deriving" ><A NAME="t%3ADeriving" ></A ></A ><B >Deriving</B > l </TD ><TD CLASS="declbut" ><A HREF="src/Language-Haskell-Exts-Annotated-Syntax.html#Deriving" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="ndoc" >A deriving clause following a data type declaration. </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:Deriving" ><A NAME="v%3ADeriving" ></A ></A ><B >Deriving</B > l [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AInstHead" >InstHead</A > l]</TD ><TD CLASS="rdoc" ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="section4" ><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'i:Deriving')" ALT="show/hide" > Instances</TD ></TR ><TR ><TD CLASS="body" ><DIV ID="i:Deriving" STYLE="display:block;" ><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0" ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Control-Monad.html#t%3AFunctor" >Functor</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ADeriving" >Deriving</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Typeable.html#t%3ATypeable1" >Typeable1</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ADeriving" >Deriving</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotated" >Annotated</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ADeriving" >Deriving</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-ExactPrint.html#t%3AExactP" >ExactP</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ADeriving" >Deriving</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ADeriving" >Deriving</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Data.html#t%3AData" >Data</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Data.html#t%3AData" >Data</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ADeriving" >Deriving</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ADeriving" >Deriving</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Text-Show.html#t%3AShow" >Show</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Text-Show.html#t%3AShow" >Show</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ADeriving" >Deriving</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Pretty.html#t%3APretty" >Pretty</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ADeriving" >Deriving</A > l)</TD ></TR ></TABLE ></DIV ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="section2" ><A NAME="4" ><A NAME="4" >Data type declarations </A ></A ></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:DataOrNew" ><A NAME="t%3ADataOrNew" ></A ></A ><B >DataOrNew</B > l </TD ><TD CLASS="declbut" ><A HREF="src/Language-Haskell-Exts-Annotated-Syntax.html#DataOrNew" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="ndoc" >A flag stating whether a declaration is a data or newtype declaration. </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:DataType" ><A NAME="v%3ADataType" ></A ></A ><B >DataType</B > l</TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:NewType" ><A NAME="v%3ANewType" ></A ></A ><B >NewType</B > l</TD ><TD CLASS="rdoc" ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="section4" ><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'i:DataOrNew')" ALT="show/hide" > Instances</TD ></TR ><TR ><TD CLASS="body" ><DIV ID="i:DataOrNew" STYLE="display:block;" ><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0" ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Control-Monad.html#t%3AFunctor" >Functor</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ADataOrNew" >DataOrNew</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Typeable.html#t%3ATypeable1" >Typeable1</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ADataOrNew" >DataOrNew</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotated" >Annotated</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ADataOrNew" >DataOrNew</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-ExactPrint.html#t%3AExactP" >ExactP</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ADataOrNew" >DataOrNew</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ADataOrNew" >DataOrNew</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Data.html#t%3AData" >Data</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Data.html#t%3AData" >Data</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ADataOrNew" >DataOrNew</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ADataOrNew" >DataOrNew</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Text-Show.html#t%3AShow" >Show</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Text-Show.html#t%3AShow" >Show</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ADataOrNew" >DataOrNew</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Pretty.html#t%3APretty" >Pretty</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ADataOrNew" >DataOrNew</A > l)</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:ConDecl" ><A NAME="t%3AConDecl" ></A ></A ><B >ConDecl</B > l </TD ><TD CLASS="declbut" ><A HREF="src/Language-Haskell-Exts-Annotated-Syntax.html#ConDecl" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="ndoc" >Declaration of an ordinary data constructor. </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:ConDecl" ><A NAME="v%3AConDecl" ></A ></A ><B >ConDecl</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AName" >Name</A > l) [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ABangType" >BangType</A > l]</TD ><TD CLASS="rdoc" >ordinary data constructor </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:InfixConDecl" ><A NAME="v%3AInfixConDecl" ></A ></A ><B >InfixConDecl</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ABangType" >BangType</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AName" >Name</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ABangType" >BangType</A > l)</TD ><TD CLASS="rdoc" >infix data constructor </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:RecDecl" ><A NAME="v%3ARecDecl" ></A ></A ><B >RecDecl</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AName" >Name</A > l) [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AFieldDecl" >FieldDecl</A > l]</TD ><TD CLASS="rdoc" >record constructor </TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="section4" ><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'i:ConDecl')" ALT="show/hide" > Instances</TD ></TR ><TR ><TD CLASS="body" ><DIV ID="i:ConDecl" STYLE="display:block;" ><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0" ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Control-Monad.html#t%3AFunctor" >Functor</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AConDecl" >ConDecl</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Typeable.html#t%3ATypeable1" >Typeable1</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AConDecl" >ConDecl</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotated" >Annotated</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AConDecl" >ConDecl</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-ExactPrint.html#t%3AExactP" >ExactP</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AConDecl" >ConDecl</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AConDecl" >ConDecl</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Data.html#t%3AData" >Data</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Data.html#t%3AData" >Data</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AConDecl" >ConDecl</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AConDecl" >ConDecl</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Text-Show.html#t%3AShow" >Show</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Text-Show.html#t%3AShow" >Show</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AConDecl" >ConDecl</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Pretty.html#t%3APretty" >Pretty</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AConDecl" >ConDecl</A > l)</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:FieldDecl" ><A NAME="t%3AFieldDecl" ></A ></A ><B >FieldDecl</B > l </TD ><TD CLASS="declbut" ><A HREF="src/Language-Haskell-Exts-Annotated-Syntax.html#FieldDecl" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="ndoc" >Declaration of a (list of) named field(s). </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:FieldDecl" ><A NAME="v%3AFieldDecl" ></A ></A ><B >FieldDecl</B > l [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AName" >Name</A > l] (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ABangType" >BangType</A > l)</TD ><TD CLASS="rdoc" ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="section4" ><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'i:FieldDecl')" ALT="show/hide" > Instances</TD ></TR ><TR ><TD CLASS="body" ><DIV ID="i:FieldDecl" STYLE="display:block;" ><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0" ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Control-Monad.html#t%3AFunctor" >Functor</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AFieldDecl" >FieldDecl</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Typeable.html#t%3ATypeable1" >Typeable1</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AFieldDecl" >FieldDecl</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotated" >Annotated</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AFieldDecl" >FieldDecl</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-ExactPrint.html#t%3AExactP" >ExactP</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AFieldDecl" >FieldDecl</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AFieldDecl" >FieldDecl</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Data.html#t%3AData" >Data</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Data.html#t%3AData" >Data</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AFieldDecl" >FieldDecl</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AFieldDecl" >FieldDecl</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Text-Show.html#t%3AShow" >Show</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Text-Show.html#t%3AShow" >Show</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AFieldDecl" >FieldDecl</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Pretty.html#t%3APretty" >Pretty</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AFieldDecl" >FieldDecl</A > l)</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:QualConDecl" ><A NAME="t%3AQualConDecl" ></A ></A ><B >QualConDecl</B > l </TD ><TD CLASS="declbut" ><A HREF="src/Language-Haskell-Exts-Annotated-Syntax.html#QualConDecl" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="ndoc" >A single constructor declaration within a data type declaration, which may have an existential quantification binding. </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:QualConDecl" ><A NAME="v%3AQualConDecl" ></A ></A ><B >QualConDecl</B > l (<A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Maybe.html#t%3AMaybe" >Maybe</A > [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ATyVarBind" >TyVarBind</A > l]) (<A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Maybe.html#t%3AMaybe" >Maybe</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AContext" >Context</A > l)) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AConDecl" >ConDecl</A > l)</TD ><TD CLASS="rdoc" ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="section4" ><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'i:QualConDecl')" ALT="show/hide" > Instances</TD ></TR ><TR ><TD CLASS="body" ><DIV ID="i:QualConDecl" STYLE="display:block;" ><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0" ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Control-Monad.html#t%3AFunctor" >Functor</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AQualConDecl" >QualConDecl</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Typeable.html#t%3ATypeable1" >Typeable1</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AQualConDecl" >QualConDecl</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotated" >Annotated</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AQualConDecl" >QualConDecl</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-ExactPrint.html#t%3AExactP" >ExactP</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AQualConDecl" >QualConDecl</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AQualConDecl" >QualConDecl</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Data.html#t%3AData" >Data</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Data.html#t%3AData" >Data</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AQualConDecl" >QualConDecl</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AQualConDecl" >QualConDecl</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Text-Show.html#t%3AShow" >Show</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Text-Show.html#t%3AShow" >Show</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AQualConDecl" >QualConDecl</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Pretty.html#t%3APretty" >Pretty</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AQualConDecl" >QualConDecl</A > l)</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:GadtDecl" ><A NAME="t%3AGadtDecl" ></A ></A ><B >GadtDecl</B > l </TD ><TD CLASS="declbut" ><A HREF="src/Language-Haskell-Exts-Annotated-Syntax.html#GadtDecl" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="ndoc" >A single constructor declaration in a GADT data type declaration. </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:GadtDecl" ><A NAME="v%3AGadtDecl" ></A ></A ><B >GadtDecl</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AName" >Name</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AType" >Type</A > l)</TD ><TD CLASS="rdoc" ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="section4" ><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'i:GadtDecl')" ALT="show/hide" > Instances</TD ></TR ><TR ><TD CLASS="body" ><DIV ID="i:GadtDecl" STYLE="display:block;" ><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0" ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Control-Monad.html#t%3AFunctor" >Functor</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AGadtDecl" >GadtDecl</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Typeable.html#t%3ATypeable1" >Typeable1</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AGadtDecl" >GadtDecl</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotated" >Annotated</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AGadtDecl" >GadtDecl</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-ExactPrint.html#t%3AExactP" >ExactP</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AGadtDecl" >GadtDecl</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AGadtDecl" >GadtDecl</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Data.html#t%3AData" >Data</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Data.html#t%3AData" >Data</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AGadtDecl" >GadtDecl</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AGadtDecl" >GadtDecl</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Text-Show.html#t%3AShow" >Show</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Text-Show.html#t%3AShow" >Show</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AGadtDecl" >GadtDecl</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Pretty.html#t%3APretty" >Pretty</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AGadtDecl" >GadtDecl</A > l)</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:BangType" ><A NAME="t%3ABangType" ></A ></A ><B >BangType</B > l </TD ><TD CLASS="declbut" ><A HREF="src/Language-Haskell-Exts-Annotated-Syntax.html#BangType" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="ndoc" >The type of a constructor argument or field, optionally including a strictness annotation. </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:BangedTy" ><A NAME="v%3ABangedTy" ></A ></A ><B >BangedTy</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AType" >Type</A > l)</TD ><TD CLASS="rdoc" >strict component, marked with "<TT >!</TT >" </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:UnBangedTy" ><A NAME="v%3AUnBangedTy" ></A ></A ><B >UnBangedTy</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AType" >Type</A > l)</TD ><TD CLASS="rdoc" >non-strict component </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:UnpackedTy" ><A NAME="v%3AUnpackedTy" ></A ></A ><B >UnpackedTy</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AType" >Type</A > l)</TD ><TD CLASS="rdoc" >unboxed component, marked with an UNPACK pragma </TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="section4" ><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'i:BangType')" ALT="show/hide" > Instances</TD ></TR ><TR ><TD CLASS="body" ><DIV ID="i:BangType" STYLE="display:block;" ><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0" ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Control-Monad.html#t%3AFunctor" >Functor</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ABangType" >BangType</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Typeable.html#t%3ATypeable1" >Typeable1</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ABangType" >BangType</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotated" >Annotated</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ABangType" >BangType</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-ExactPrint.html#t%3AExactP" >ExactP</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ABangType" >BangType</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ABangType" >BangType</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Data.html#t%3AData" >Data</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Data.html#t%3AData" >Data</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ABangType" >BangType</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ABangType" >BangType</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Text-Show.html#t%3AShow" >Show</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Text-Show.html#t%3AShow" >Show</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ABangType" >BangType</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Pretty.html#t%3APretty" >Pretty</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ABangType" >BangType</A > l)</TD ></TR ></TABLE ></DIV ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="section2" ><A NAME="5" ><A NAME="5" >Function bindings </A ></A ></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 > l </TD ><TD CLASS="declbut" ><A HREF="src/Language-Haskell-Exts-Annotated-Syntax.html#Match" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="ndoc" >Clauses of a function binding. </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:Match" ><A NAME="v%3AMatch" ></A ></A ><B >Match</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AName" >Name</A > l) [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3APat" >Pat</A > l] (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ARhs" >Rhs</A > l) (<A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Maybe.html#t%3AMaybe" >Maybe</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ABinds" >Binds</A > l))</TD ><TD CLASS="rdoc" >A clause defined with prefix notation, i.e. the function name followed by its argument patterns, the right-hand side and an optional where clause. </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:InfixMatch" ><A NAME="v%3AInfixMatch" ></A ></A ><B >InfixMatch</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3APat" >Pat</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AName" >Name</A > l) [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3APat" >Pat</A > l] (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ARhs" >Rhs</A > l) (<A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Maybe.html#t%3AMaybe" >Maybe</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ABinds" >Binds</A > l))</TD ><TD CLASS="rdoc" >A clause defined with infix notation, i.e. first its first argument pattern, then the function name, then its following argument(s), the right-hand side and an optional where clause. Note that there can be more than two arguments to a function declared infix, hence the list of pattern arguments. </TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="section4" ><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'i:Match')" ALT="show/hide" > Instances</TD ></TR ><TR ><TD CLASS="body" ><DIV ID="i:Match" STYLE="display:block;" ><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0" ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Control-Monad.html#t%3AFunctor" >Functor</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AMatch" >Match</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Typeable.html#t%3ATypeable1" >Typeable1</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AMatch" >Match</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotated" >Annotated</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AMatch" >Match</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-ExactPrint.html#t%3AExactP" >ExactP</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AMatch" >Match</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Fixity.html#t%3AAppFixity" >AppFixity</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AMatch" >Match</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AMatch" >Match</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Data.html#t%3AData" >Data</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Data.html#t%3AData" >Data</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AMatch" >Match</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AMatch" >Match</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Text-Show.html#t%3AShow" >Show</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Text-Show.html#t%3AShow" >Show</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AMatch" >Match</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-SrcLoc.html#t%3ASrcInfo" >SrcInfo</A > pos => <A HREF="Language-Haskell-Exts-Pretty.html#t%3APretty" >Pretty</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AMatch" >Match</A > pos)</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:Rhs" ><A NAME="t%3ARhs" ></A ></A ><B >Rhs</B > l </TD ><TD CLASS="declbut" ><A HREF="src/Language-Haskell-Exts-Annotated-Syntax.html#Rhs" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="ndoc" >The right hand side of a function or pattern binding. </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:UnGuardedRhs" ><A NAME="v%3AUnGuardedRhs" ></A ></A ><B >UnGuardedRhs</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l)</TD ><TD CLASS="rdoc" >unguarded right hand side (<EM >exp</EM >) </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:GuardedRhss" ><A NAME="v%3AGuardedRhss" ></A ></A ><B >GuardedRhss</B > l [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AGuardedRhs" >GuardedRhs</A > l]</TD ><TD CLASS="rdoc" >guarded right hand side (<EM >gdrhs</EM >) </TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="section4" ><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'i:Rhs')" ALT="show/hide" > Instances</TD ></TR ><TR ><TD CLASS="body" ><DIV ID="i:Rhs" STYLE="display:block;" ><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0" ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Control-Monad.html#t%3AFunctor" >Functor</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ARhs" >Rhs</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Typeable.html#t%3ATypeable1" >Typeable1</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ARhs" >Rhs</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotated" >Annotated</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ARhs" >Rhs</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-ExactPrint.html#t%3AExactP" >ExactP</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ARhs" >Rhs</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Fixity.html#t%3AAppFixity" >AppFixity</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ARhs" >Rhs</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ARhs" >Rhs</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Data.html#t%3AData" >Data</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Data.html#t%3AData" >Data</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ARhs" >Rhs</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ARhs" >Rhs</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Text-Show.html#t%3AShow" >Show</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Text-Show.html#t%3AShow" >Show</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ARhs" >Rhs</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-SrcLoc.html#t%3ASrcInfo" >SrcInfo</A > loc => <A HREF="Language-Haskell-Exts-Pretty.html#t%3APretty" >Pretty</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ARhs" >Rhs</A > loc)</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:GuardedRhs" ><A NAME="t%3AGuardedRhs" ></A ></A ><B >GuardedRhs</B > l </TD ><TD CLASS="declbut" ><A HREF="src/Language-Haskell-Exts-Annotated-Syntax.html#GuardedRhs" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="ndoc" >A guarded right hand side <TT >|</TT > <EM >stmts</EM > <TT >=</TT > <EM >exp</EM >. The guard is a series of statements when using pattern guards, otherwise it will be a single qualifier 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:GuardedRhs" ><A NAME="v%3AGuardedRhs" ></A ></A ><B >GuardedRhs</B > l [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AStmt" >Stmt</A > l] (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l)</TD ><TD CLASS="rdoc" ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="section4" ><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'i:GuardedRhs')" ALT="show/hide" > Instances</TD ></TR ><TR ><TD CLASS="body" ><DIV ID="i:GuardedRhs" STYLE="display:block;" ><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0" ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Control-Monad.html#t%3AFunctor" >Functor</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AGuardedRhs" >GuardedRhs</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Typeable.html#t%3ATypeable1" >Typeable1</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AGuardedRhs" >GuardedRhs</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotated" >Annotated</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AGuardedRhs" >GuardedRhs</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-ExactPrint.html#t%3AExactP" >ExactP</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AGuardedRhs" >GuardedRhs</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Fixity.html#t%3AAppFixity" >AppFixity</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AGuardedRhs" >GuardedRhs</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AGuardedRhs" >GuardedRhs</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Data.html#t%3AData" >Data</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Data.html#t%3AData" >Data</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AGuardedRhs" >GuardedRhs</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AGuardedRhs" >GuardedRhs</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Text-Show.html#t%3AShow" >Show</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Text-Show.html#t%3AShow" >Show</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AGuardedRhs" >GuardedRhs</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-SrcLoc.html#t%3ASrcInfo" >SrcInfo</A > loc => <A HREF="Language-Haskell-Exts-Pretty.html#t%3APretty" >Pretty</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AGuardedRhs" >GuardedRhs</A > loc)</TD ></TR ></TABLE ></DIV ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="section1" ><A NAME="6" ><A NAME="6" >Class Assertions and Contexts </A ></A ></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:Context" ><A NAME="t%3AContext" ></A ></A ><B >Context</B > l </TD ><TD CLASS="declbut" ><A HREF="src/Language-Haskell-Exts-Annotated-Syntax.html#Context" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="ndoc" >A context is a set of assertions </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:CxSingle" ><A NAME="v%3ACxSingle" ></A ></A ><B >CxSingle</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAsst" >Asst</A > l)</TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:CxTuple" ><A NAME="v%3ACxTuple" ></A ></A ><B >CxTuple</B > l [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAsst" >Asst</A > l]</TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:CxParen" ><A NAME="v%3ACxParen" ></A ></A ><B >CxParen</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AContext" >Context</A > l)</TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:CxEmpty" ><A NAME="v%3ACxEmpty" ></A ></A ><B >CxEmpty</B > l</TD ><TD CLASS="rdoc" ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="section4" ><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'i:Context')" ALT="show/hide" > Instances</TD ></TR ><TR ><TD CLASS="body" ><DIV ID="i:Context" STYLE="display:block;" ><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0" ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Control-Monad.html#t%3AFunctor" >Functor</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AContext" >Context</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Typeable.html#t%3ATypeable1" >Typeable1</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AContext" >Context</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotated" >Annotated</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AContext" >Context</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-ExactPrint.html#t%3AExactP" >ExactP</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AContext" >Context</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AContext" >Context</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Data.html#t%3AData" >Data</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Data.html#t%3AData" >Data</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AContext" >Context</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AContext" >Context</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Text-Show.html#t%3AShow" >Show</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Text-Show.html#t%3AShow" >Show</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AContext" >Context</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Pretty.html#t%3APretty" >Pretty</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AContext" >Context</A > l)</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:FunDep" ><A NAME="t%3AFunDep" ></A ></A ><B >FunDep</B > l </TD ><TD CLASS="declbut" ><A HREF="src/Language-Haskell-Exts-Annotated-Syntax.html#FunDep" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="ndoc" >A functional dependency, given on the form l1 l2 ... ln -> r2 r3 .. rn </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:FunDep" ><A NAME="v%3AFunDep" ></A ></A ><B >FunDep</B > l [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AName" >Name</A > l] [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AName" >Name</A > l]</TD ><TD CLASS="rdoc" ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="section4" ><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'i:FunDep')" ALT="show/hide" > Instances</TD ></TR ><TR ><TD CLASS="body" ><DIV ID="i:FunDep" STYLE="display:block;" ><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0" ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Control-Monad.html#t%3AFunctor" >Functor</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AFunDep" >FunDep</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Typeable.html#t%3ATypeable1" >Typeable1</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AFunDep" >FunDep</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotated" >Annotated</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AFunDep" >FunDep</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-ExactPrint.html#t%3AExactP" >ExactP</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AFunDep" >FunDep</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AFunDep" >FunDep</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Data.html#t%3AData" >Data</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Data.html#t%3AData" >Data</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AFunDep" >FunDep</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AFunDep" >FunDep</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Text-Show.html#t%3AShow" >Show</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Text-Show.html#t%3AShow" >Show</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AFunDep" >FunDep</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Pretty.html#t%3APretty" >Pretty</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AFunDep" >FunDep</A > l)</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:Asst" ><A NAME="t%3AAsst" ></A ></A ><B >Asst</B > l </TD ><TD CLASS="declbut" ><A HREF="src/Language-Haskell-Exts-Annotated-Syntax.html#Asst" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="ndoc" >Class assertions. In Haskell 98, the argument would be a <EM >tyvar</EM >, but this definition allows multiple parameters, and allows them to be <EM >type</EM >s. Also extended with support for implicit parameters and equality constraints. </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:ClassA" ><A NAME="v%3AClassA" ></A ></A ><B >ClassA</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AQName" >QName</A > l) [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AType" >Type</A > l]</TD ><TD CLASS="rdoc" >ordinary class assertion </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:InfixA" ><A NAME="v%3AInfixA" ></A ></A ><B >InfixA</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AType" >Type</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AQName" >QName</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AType" >Type</A > l)</TD ><TD CLASS="rdoc" >class assertion where the class name is given infix </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:IParam" ><A NAME="v%3AIParam" ></A ></A ><B >IParam</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AIPName" >IPName</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AType" >Type</A > l)</TD ><TD CLASS="rdoc" >implicit parameter assertion </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:EqualP" ><A NAME="v%3AEqualP" ></A ></A ><B >EqualP</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AType" >Type</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AType" >Type</A > l)</TD ><TD CLASS="rdoc" >type equality constraint </TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="section4" ><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'i:Asst')" ALT="show/hide" > Instances</TD ></TR ><TR ><TD CLASS="body" ><DIV ID="i:Asst" STYLE="display:block;" ><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0" ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Control-Monad.html#t%3AFunctor" >Functor</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAsst" >Asst</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Typeable.html#t%3ATypeable1" >Typeable1</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAsst" >Asst</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotated" >Annotated</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAsst" >Asst</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-ExactPrint.html#t%3AExactP" >ExactP</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAsst" >Asst</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAsst" >Asst</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Data.html#t%3AData" >Data</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Data.html#t%3AData" >Data</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAsst" >Asst</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAsst" >Asst</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Text-Show.html#t%3AShow" >Show</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Text-Show.html#t%3AShow" >Show</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAsst" >Asst</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Pretty.html#t%3APretty" >Pretty</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAsst" >Asst</A > l)</TD ></TR ></TABLE ></DIV ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="section1" ><A NAME="7" ><A NAME="7" >Types </A ></A ></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:Type" ><A NAME="t%3AType" ></A ></A ><B >Type</B > l </TD ><TD CLASS="declbut" ><A HREF="src/Language-Haskell-Exts-Annotated-Syntax.html#Type" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="ndoc" >A type qualified with a context. An unqualified type has an empty context. </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:TyForall" ><A NAME="v%3ATyForall" ></A ></A ><B >TyForall</B > l (<A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Maybe.html#t%3AMaybe" >Maybe</A > [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ATyVarBind" >TyVarBind</A > l]) (<A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Maybe.html#t%3AMaybe" >Maybe</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AContext" >Context</A > l)) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AType" >Type</A > l)</TD ><TD CLASS="rdoc" >qualified type </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:TyFun" ><A NAME="v%3ATyFun" ></A ></A ><B >TyFun</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AType" >Type</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AType" >Type</A > l)</TD ><TD CLASS="rdoc" >function type </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:TyTuple" ><A NAME="v%3ATyTuple" ></A ></A ><B >TyTuple</B > l <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ABoxed" >Boxed</A > [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AType" >Type</A > l]</TD ><TD CLASS="rdoc" >tuple type, possibly boxed </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:TyList" ><A NAME="v%3ATyList" ></A ></A ><B >TyList</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AType" >Type</A > l)</TD ><TD CLASS="rdoc" >list syntax, e.g. [a], as opposed to [] a </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:TyApp" ><A NAME="v%3ATyApp" ></A ></A ><B >TyApp</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AType" >Type</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AType" >Type</A > l)</TD ><TD CLASS="rdoc" >application of a type constructor </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:TyVar" ><A NAME="v%3ATyVar" ></A ></A ><B >TyVar</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AName" >Name</A > l)</TD ><TD CLASS="rdoc" >type variable </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:TyCon" ><A NAME="v%3ATyCon" ></A ></A ><B >TyCon</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AQName" >QName</A > l)</TD ><TD CLASS="rdoc" >named type or type constructor </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:TyParen" ><A NAME="v%3ATyParen" ></A ></A ><B >TyParen</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AType" >Type</A > l)</TD ><TD CLASS="rdoc" >type surrounded by parentheses </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:TyInfix" ><A NAME="v%3ATyInfix" ></A ></A ><B >TyInfix</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AType" >Type</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AQName" >QName</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AType" >Type</A > l)</TD ><TD CLASS="rdoc" >infix type constructor </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:TyKind" ><A NAME="v%3ATyKind" ></A ></A ><B >TyKind</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AType" >Type</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AKind" >Kind</A > l)</TD ><TD CLASS="rdoc" >type with explicit kind signature </TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="section4" ><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'i:Type')" ALT="show/hide" > Instances</TD ></TR ><TR ><TD CLASS="body" ><DIV ID="i:Type" STYLE="display:block;" ><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0" ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Control-Monad.html#t%3AFunctor" >Functor</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AType" >Type</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Typeable.html#t%3ATypeable1" >Typeable1</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AType" >Type</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotated" >Annotated</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AType" >Type</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-ExactPrint.html#t%3AExactP" >ExactP</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AType" >Type</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AType" >Type</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Data.html#t%3AData" >Data</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Data.html#t%3AData" >Data</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AType" >Type</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AType" >Type</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Text-Show.html#t%3AShow" >Show</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Text-Show.html#t%3AShow" >Show</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AType" >Type</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Pretty.html#t%3APretty" >Pretty</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AType" >Type</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-SrcLoc.html#t%3ASrcInfo" >SrcInfo</A > loc => <A HREF="Language-Haskell-Exts-Parser.html#t%3AParseable" >Parseable</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AType" >Type</A > loc)</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:Boxed" ><A NAME="t%3ABoxed" ></A ></A ><B >Boxed</B > </TD ><TD CLASS="declbut" ><A HREF="src/Language-Haskell-Exts-Annotated-Syntax.html#Boxed" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="ndoc" >Flag denoting whether a tuple is boxed or unboxed. </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:Boxed" ><A NAME="v%3ABoxed" ></A ></A ><B >Boxed</B ></TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:Unboxed" ><A NAME="v%3AUnboxed" ></A ></A ><B >Unboxed</B ></TD ><TD CLASS="rdoc" ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="section4" ><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'i:Boxed')" ALT="show/hide" > Instances</TD ></TR ><TR ><TD CLASS="body" ><DIV ID="i:Boxed" STYLE="display:block;" ><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0" ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ABoxed" >Boxed</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Data.html#t%3AData" >Data</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ABoxed" >Boxed</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ABoxed" >Boxed</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Text-Show.html#t%3AShow" >Show</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ABoxed" >Boxed</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Typeable.html#t%3ATypeable" >Typeable</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ABoxed" >Boxed</A ></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:Kind" ><A NAME="t%3AKind" ></A ></A ><B >Kind</B > l </TD ><TD CLASS="declbut" ><A HREF="src/Language-Haskell-Exts-Annotated-Syntax.html#Kind" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="ndoc" >An explicit kind annotation. </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:KindStar" ><A NAME="v%3AKindStar" ></A ></A ><B >KindStar</B > l</TD ><TD CLASS="rdoc" ><TT >*</TT >, the kind of types </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:KindBang" ><A NAME="v%3AKindBang" ></A ></A ><B >KindBang</B > l</TD ><TD CLASS="rdoc" ><TT >!</TT >, the kind of unboxed types </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:KindFn" ><A NAME="v%3AKindFn" ></A ></A ><B >KindFn</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AKind" >Kind</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AKind" >Kind</A > l)</TD ><TD CLASS="rdoc" ><TT >-></TT >, the kind of a type constructor </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:KindParen" ><A NAME="v%3AKindParen" ></A ></A ><B >KindParen</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AKind" >Kind</A > l)</TD ><TD CLASS="rdoc" >a parenthesised kind </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:KindVar" ><A NAME="v%3AKindVar" ></A ></A ><B >KindVar</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AName" >Name</A > l)</TD ><TD CLASS="rdoc" >a kind variable (as-of-yet unsupported by compilers) </TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="section4" ><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'i:Kind')" ALT="show/hide" > Instances</TD ></TR ><TR ><TD CLASS="body" ><DIV ID="i:Kind" STYLE="display:block;" ><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0" ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Control-Monad.html#t%3AFunctor" >Functor</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AKind" >Kind</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Typeable.html#t%3ATypeable1" >Typeable1</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AKind" >Kind</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotated" >Annotated</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AKind" >Kind</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-ExactPrint.html#t%3AExactP" >ExactP</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AKind" >Kind</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AKind" >Kind</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Data.html#t%3AData" >Data</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Data.html#t%3AData" >Data</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AKind" >Kind</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AKind" >Kind</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Text-Show.html#t%3AShow" >Show</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Text-Show.html#t%3AShow" >Show</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AKind" >Kind</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Pretty.html#t%3APretty" >Pretty</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AKind" >Kind</A > l)</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:TyVarBind" ><A NAME="t%3ATyVarBind" ></A ></A ><B >TyVarBind</B > l </TD ><TD CLASS="declbut" ><A HREF="src/Language-Haskell-Exts-Annotated-Syntax.html#TyVarBind" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="ndoc" >A type variable declaration, optionally with an explicit kind annotation. </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:KindedVar" ><A NAME="v%3AKindedVar" ></A ></A ><B >KindedVar</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AName" >Name</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AKind" >Kind</A > l)</TD ><TD CLASS="rdoc" >variable binding with kind annotation </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:UnkindedVar" ><A NAME="v%3AUnkindedVar" ></A ></A ><B >UnkindedVar</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AName" >Name</A > l)</TD ><TD CLASS="rdoc" >ordinary variable binding </TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="section4" ><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'i:TyVarBind')" ALT="show/hide" > Instances</TD ></TR ><TR ><TD CLASS="body" ><DIV ID="i:TyVarBind" STYLE="display:block;" ><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0" ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Control-Monad.html#t%3AFunctor" >Functor</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ATyVarBind" >TyVarBind</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Typeable.html#t%3ATypeable1" >Typeable1</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ATyVarBind" >TyVarBind</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotated" >Annotated</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ATyVarBind" >TyVarBind</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-ExactPrint.html#t%3AExactP" >ExactP</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ATyVarBind" >TyVarBind</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ATyVarBind" >TyVarBind</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Data.html#t%3AData" >Data</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Data.html#t%3AData" >Data</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ATyVarBind" >TyVarBind</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ATyVarBind" >TyVarBind</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Text-Show.html#t%3AShow" >Show</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Text-Show.html#t%3AShow" >Show</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ATyVarBind" >TyVarBind</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Pretty.html#t%3APretty" >Pretty</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ATyVarBind" >TyVarBind</A > l)</TD ></TR ></TABLE ></DIV ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="section1" ><A NAME="8" ><A NAME="8" >Expressions </A ></A ></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:Exp" ><A NAME="t%3AExp" ></A ></A ><B >Exp</B > l </TD ><TD CLASS="declbut" ><A HREF="src/Language-Haskell-Exts-Annotated-Syntax.html#Exp" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="ndoc" >Haskell expressions. </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:Var" ><A NAME="v%3AVar" ></A ></A ><B >Var</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AQName" >QName</A > l)</TD ><TD CLASS="rdoc" >variable </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:IPVar" ><A NAME="v%3AIPVar" ></A ></A ><B >IPVar</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AIPName" >IPName</A > l)</TD ><TD CLASS="rdoc" >implicit parameter variable </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:Con" ><A NAME="v%3ACon" ></A ></A ><B >Con</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AQName" >QName</A > l)</TD ><TD CLASS="rdoc" >data constructor </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:Lit" ><A NAME="v%3ALit" ></A ></A ><B >Lit</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ALiteral" >Literal</A > l)</TD ><TD CLASS="rdoc" >literal constant </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:InfixApp" ><A NAME="v%3AInfixApp" ></A ></A ><B >InfixApp</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AQOp" >QOp</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l)</TD ><TD CLASS="rdoc" >infix application </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:App" ><A NAME="v%3AApp" ></A ></A ><B >App</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l)</TD ><TD CLASS="rdoc" >ordinary application </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:NegApp" ><A NAME="v%3ANegApp" ></A ></A ><B >NegApp</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l)</TD ><TD CLASS="rdoc" >negation expression <TT >-<EM >exp</EM ></TT > (unary minus) </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:Lambda" ><A NAME="v%3ALambda" ></A ></A ><B >Lambda</B > l [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3APat" >Pat</A > l] (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l)</TD ><TD CLASS="rdoc" >lambda expression </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:Let" ><A NAME="v%3ALet" ></A ></A ><B >Let</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ABinds" >Binds</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l)</TD ><TD CLASS="rdoc" >local declarations with <TT >let</TT > ... <TT >in</TT > ... </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:If" ><A NAME="v%3AIf" ></A ></A ><B >If</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l)</TD ><TD CLASS="rdoc" ><TT >if</TT > <EM >exp</EM > <TT >then</TT > <EM >exp</EM > <TT >else</TT > <EM >exp</EM > </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:Case" ><A NAME="v%3ACase" ></A ></A ><B >Case</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l) [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAlt" >Alt</A > l]</TD ><TD CLASS="rdoc" ><TT >case</TT > <EM >exp</EM > <TT >of</TT > <EM >alts</EM > </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:Do" ><A NAME="v%3ADo" ></A ></A ><B >Do</B > l [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AStmt" >Stmt</A > l]</TD ><TD CLASS="rdoc" ><TT >do</TT >-expression: the last statement in the list should be an expression. </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:MDo" ><A NAME="v%3AMDo" ></A ></A ><B >MDo</B > l [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AStmt" >Stmt</A > l]</TD ><TD CLASS="rdoc" ><TT >mdo</TT >-expression </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:Tuple" ><A NAME="v%3ATuple" ></A ></A ><B >Tuple</B > l [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l]</TD ><TD CLASS="rdoc" >tuple expression </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:TupleSection" ><A NAME="v%3ATupleSection" ></A ></A ><B >TupleSection</B > l [<A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Maybe.html#t%3AMaybe" >Maybe</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l)]</TD ><TD CLASS="rdoc" >tuple section expression, e.g. <TT >(,,3)</TT > </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:List" ><A NAME="v%3AList" ></A ></A ><B >List</B > l [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l]</TD ><TD CLASS="rdoc" >list expression </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:Paren" ><A NAME="v%3AParen" ></A ></A ><B >Paren</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l)</TD ><TD CLASS="rdoc" >parenthesised expression </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:LeftSection" ><A NAME="v%3ALeftSection" ></A ></A ><B >LeftSection</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AQOp" >QOp</A > l)</TD ><TD CLASS="rdoc" >left section <TT >(</TT ><EM >exp</EM > <EM >qop</EM ><TT >)</TT > </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:RightSection" ><A NAME="v%3ARightSection" ></A ></A ><B >RightSection</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AQOp" >QOp</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l)</TD ><TD CLASS="rdoc" >right section <TT >(</TT ><EM >qop</EM > <EM >exp</EM ><TT >)</TT > </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:RecConstr" ><A NAME="v%3ARecConstr" ></A ></A ><B >RecConstr</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AQName" >QName</A > l) [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AFieldUpdate" >FieldUpdate</A > l]</TD ><TD CLASS="rdoc" >record construction expression </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:RecUpdate" ><A NAME="v%3ARecUpdate" ></A ></A ><B >RecUpdate</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l) [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AFieldUpdate" >FieldUpdate</A > l]</TD ><TD CLASS="rdoc" >record update expression </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:EnumFrom" ><A NAME="v%3AEnumFrom" ></A ></A ><B >EnumFrom</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l)</TD ><TD CLASS="rdoc" >unbounded arithmetic sequence, incrementing by 1: <TT >[from ..]</TT > </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:EnumFromTo" ><A NAME="v%3AEnumFromTo" ></A ></A ><B >EnumFromTo</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l)</TD ><TD CLASS="rdoc" >bounded arithmetic sequence, incrementing by 1 <TT >[from .. to]</TT > </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:EnumFromThen" ><A NAME="v%3AEnumFromThen" ></A ></A ><B >EnumFromThen</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l)</TD ><TD CLASS="rdoc" >unbounded arithmetic sequence, with first two elements given <TT >[from, then ..]</TT > </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:EnumFromThenTo" ><A NAME="v%3AEnumFromThenTo" ></A ></A ><B >EnumFromThenTo</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l)</TD ><TD CLASS="rdoc" >bounded arithmetic sequence, with first two elements given <TT >[from, then .. to]</TT > </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:ListComp" ><A NAME="v%3AListComp" ></A ></A ><B >ListComp</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l) [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AQualStmt" >QualStmt</A > l]</TD ><TD CLASS="rdoc" >ordinary list comprehension </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:ParComp" ><A NAME="v%3AParComp" ></A ></A ><B >ParComp</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l) [[<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AQualStmt" >QualStmt</A > l]]</TD ><TD CLASS="rdoc" >parallel list comprehension </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:ExpTypeSig" ><A NAME="v%3AExpTypeSig" ></A ></A ><B >ExpTypeSig</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AType" >Type</A > l)</TD ><TD CLASS="rdoc" >expression with explicit type signature </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:VarQuote" ><A NAME="v%3AVarQuote" ></A ></A ><B >VarQuote</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AQName" >QName</A > l)</TD ><TD CLASS="rdoc" ><TT >'x</TT > for template haskell reifying of expressions </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:TypQuote" ><A NAME="v%3ATypQuote" ></A ></A ><B >TypQuote</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AQName" >QName</A > l)</TD ><TD CLASS="rdoc" ><TT >''T</TT > for template haskell reifying of types </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:BracketExp" ><A NAME="v%3ABracketExp" ></A ></A ><B >BracketExp</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ABracket" >Bracket</A > l)</TD ><TD CLASS="rdoc" >template haskell bracket expression </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:SpliceExp" ><A NAME="v%3ASpliceExp" ></A ></A ><B >SpliceExp</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ASplice" >Splice</A > l)</TD ><TD CLASS="rdoc" >template haskell splice expression </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:QuasiQuote" ><A NAME="v%3AQuasiQuote" ></A ></A ><B >QuasiQuote</B > l <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Char.html#t%3AString" >String</A > <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Char.html#t%3AString" >String</A ></TD ><TD CLASS="rdoc" >quasi-quotaion: <TT >[$<EM >name</EM >| <EM >string</EM > |]</TT > </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:XTag" ><A NAME="v%3AXTag" ></A ></A ><B >XTag</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AXName" >XName</A > l) [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AXAttr" >XAttr</A > l] (<A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Maybe.html#t%3AMaybe" >Maybe</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l)) [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l]</TD ><TD CLASS="rdoc" >xml element, with attributes and children </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:XETag" ><A NAME="v%3AXETag" ></A ></A ><B >XETag</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AXName" >XName</A > l) [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AXAttr" >XAttr</A > l] (<A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Maybe.html#t%3AMaybe" >Maybe</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l))</TD ><TD CLASS="rdoc" >empty xml element, with attributes </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:XPcdata" ><A NAME="v%3AXPcdata" ></A ></A ><B >XPcdata</B > l <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Char.html#t%3AString" >String</A ></TD ><TD CLASS="rdoc" >PCDATA child element </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:XExpTag" ><A NAME="v%3AXExpTag" ></A ></A ><B >XExpTag</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l)</TD ><TD CLASS="rdoc" >escaped haskell expression inside xml </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:CorePragma" ><A NAME="v%3ACorePragma" ></A ></A ><B >CorePragma</B > l <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Char.html#t%3AString" >String</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l)</TD ><TD CLASS="rdoc" >CORE pragma </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:SCCPragma" ><A NAME="v%3ASCCPragma" ></A ></A ><B >SCCPragma</B > l <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Char.html#t%3AString" >String</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l)</TD ><TD CLASS="rdoc" >SCC pragma </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:GenPragma" ><A NAME="v%3AGenPragma" ></A ></A ><B >GenPragma</B > l <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Char.html#t%3AString" >String</A > (<A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Int.html#t%3AInt" >Int</A >, <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Int.html#t%3AInt" >Int</A >) (<A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Int.html#t%3AInt" >Int</A >, <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Int.html#t%3AInt" >Int</A >) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l)</TD ><TD CLASS="rdoc" >GENERATED pragma </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:Proc" ><A NAME="v%3AProc" ></A ></A ><B >Proc</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3APat" >Pat</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l)</TD ><TD CLASS="rdoc" >arrows proc: <TT >proc</TT > <EM >pat</EM > <TT >-></TT > <EM >exp</EM > </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:LeftArrApp" ><A NAME="v%3ALeftArrApp" ></A ></A ><B >LeftArrApp</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l)</TD ><TD CLASS="rdoc" >arrow application (from left): <EM >exp</EM > <TT >-<</TT > <EM >exp</EM > </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:RightArrApp" ><A NAME="v%3ARightArrApp" ></A ></A ><B >RightArrApp</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l)</TD ><TD CLASS="rdoc" >arrow application (from right): <EM >exp</EM > <TT >>-</TT > <EM >exp</EM > </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:LeftArrHighApp" ><A NAME="v%3ALeftArrHighApp" ></A ></A ><B >LeftArrHighApp</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l)</TD ><TD CLASS="rdoc" >higher-order arrow application (from left): <EM >exp</EM > <TT >-<<</TT > <EM >exp</EM > </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:RightArrHighApp" ><A NAME="v%3ARightArrHighApp" ></A ></A ><B >RightArrHighApp</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l)</TD ><TD CLASS="rdoc" >higher-order arrow application (from right): <EM >exp</EM > <TT >>>-</TT > <EM >exp</EM > </TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="section4" ><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'i:Exp')" ALT="show/hide" > Instances</TD ></TR ><TR ><TD CLASS="body" ><DIV ID="i:Exp" STYLE="display:block;" ><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0" ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Control-Monad.html#t%3AFunctor" >Functor</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Typeable.html#t%3ATypeable1" >Typeable1</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotated" >Annotated</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-ExactPrint.html#t%3AExactP" >ExactP</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Fixity.html#t%3AAppFixity" >AppFixity</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Data.html#t%3AData" >Data</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Data.html#t%3AData" >Data</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Text-Show.html#t%3AShow" >Show</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Text-Show.html#t%3AShow" >Show</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-SrcLoc.html#t%3ASrcInfo" >SrcInfo</A > loc => <A HREF="Language-Haskell-Exts-Pretty.html#t%3APretty" >Pretty</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > loc)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-SrcLoc.html#t%3ASrcInfo" >SrcInfo</A > loc => <A HREF="Language-Haskell-Exts-Parser.html#t%3AParseable" >Parseable</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > loc)</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:Stmt" ><A NAME="t%3AStmt" ></A ></A ><B >Stmt</B > l </TD ><TD CLASS="declbut" ><A HREF="src/Language-Haskell-Exts-Annotated-Syntax.html#Stmt" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="ndoc" >A statement, representing both a <EM >stmt</EM > in a <TT >do</TT >-expression, an ordinary <EM >qual</EM > in a list comprehension, as well as a <EM >stmt</EM > in a pattern guard. </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:Generator" ><A NAME="v%3AGenerator" ></A ></A ><B >Generator</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3APat" >Pat</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l)</TD ><TD CLASS="rdoc" >a generator: <EM >pat</EM > <TT ><-</TT > <EM >exp</EM > </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:Qualifier" ><A NAME="v%3AQualifier" ></A ></A ><B >Qualifier</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l)</TD ><TD CLASS="rdoc" >an <EM >exp</EM > by itself: in a <TT >do</TT >-expression, an action whose result is discarded; in a list comprehension and pattern guard, a guard expression </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:LetStmt" ><A NAME="v%3ALetStmt" ></A ></A ><B >LetStmt</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ABinds" >Binds</A > l)</TD ><TD CLASS="rdoc" >local bindings </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:RecStmt" ><A NAME="v%3ARecStmt" ></A ></A ><B >RecStmt</B > l [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AStmt" >Stmt</A > l]</TD ><TD CLASS="rdoc" >a recursive binding group for arrows </TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="section4" ><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'i:Stmt')" ALT="show/hide" > Instances</TD ></TR ><TR ><TD CLASS="body" ><DIV ID="i:Stmt" STYLE="display:block;" ><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0" ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Control-Monad.html#t%3AFunctor" >Functor</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AStmt" >Stmt</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Typeable.html#t%3ATypeable1" >Typeable1</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AStmt" >Stmt</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotated" >Annotated</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AStmt" >Stmt</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-ExactPrint.html#t%3AExactP" >ExactP</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AStmt" >Stmt</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Fixity.html#t%3AAppFixity" >AppFixity</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AStmt" >Stmt</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AStmt" >Stmt</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Data.html#t%3AData" >Data</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Data.html#t%3AData" >Data</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AStmt" >Stmt</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AStmt" >Stmt</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Text-Show.html#t%3AShow" >Show</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Text-Show.html#t%3AShow" >Show</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AStmt" >Stmt</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-SrcLoc.html#t%3ASrcInfo" >SrcInfo</A > loc => <A HREF="Language-Haskell-Exts-Pretty.html#t%3APretty" >Pretty</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AStmt" >Stmt</A > loc)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-SrcLoc.html#t%3ASrcInfo" >SrcInfo</A > loc => <A HREF="Language-Haskell-Exts-Parser.html#t%3AParseable" >Parseable</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AStmt" >Stmt</A > loc)</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:QualStmt" ><A NAME="t%3AQualStmt" ></A ></A ><B >QualStmt</B > l </TD ><TD CLASS="declbut" ><A HREF="src/Language-Haskell-Exts-Annotated-Syntax.html#QualStmt" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="ndoc" >A general <EM >transqual</EM > in a list comprehension, which could potentially be a transform of the kind enabled by TransformListComp. </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:QualStmt" ><A NAME="v%3AQualStmt" ></A ></A ><B >QualStmt</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AStmt" >Stmt</A > l)</TD ><TD CLASS="rdoc" >an ordinary statement </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:ThenTrans" ><A NAME="v%3AThenTrans" ></A ></A ><B >ThenTrans</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l)</TD ><TD CLASS="rdoc" ><TT >then</TT > <EM >exp</EM > </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:ThenBy" ><A NAME="v%3AThenBy" ></A ></A ><B >ThenBy</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l)</TD ><TD CLASS="rdoc" ><TT >then</TT > <EM >exp</EM > <TT >by</TT > <EM >exp</EM > </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:GroupBy" ><A NAME="v%3AGroupBy" ></A ></A ><B >GroupBy</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l)</TD ><TD CLASS="rdoc" ><TT >then</TT > <TT >group</TT > <TT >by</TT > <EM >exp</EM > </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:GroupUsing" ><A NAME="v%3AGroupUsing" ></A ></A ><B >GroupUsing</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l)</TD ><TD CLASS="rdoc" ><TT >then</TT > <TT >group</TT > <TT >using</TT > <EM >exp</EM > </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:GroupByUsing" ><A NAME="v%3AGroupByUsing" ></A ></A ><B >GroupByUsing</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l)</TD ><TD CLASS="rdoc" ><TT >then</TT > <TT >group</TT > <TT >by</TT > <EM >exp</EM > <TT >using</TT > <EM >exp</EM > </TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="section4" ><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'i:QualStmt')" ALT="show/hide" > Instances</TD ></TR ><TR ><TD CLASS="body" ><DIV ID="i:QualStmt" STYLE="display:block;" ><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0" ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Control-Monad.html#t%3AFunctor" >Functor</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AQualStmt" >QualStmt</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Typeable.html#t%3ATypeable1" >Typeable1</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AQualStmt" >QualStmt</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotated" >Annotated</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AQualStmt" >QualStmt</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-ExactPrint.html#t%3AExactP" >ExactP</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AQualStmt" >QualStmt</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Fixity.html#t%3AAppFixity" >AppFixity</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AQualStmt" >QualStmt</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AQualStmt" >QualStmt</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Data.html#t%3AData" >Data</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Data.html#t%3AData" >Data</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AQualStmt" >QualStmt</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AQualStmt" >QualStmt</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Text-Show.html#t%3AShow" >Show</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Text-Show.html#t%3AShow" >Show</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AQualStmt" >QualStmt</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-SrcLoc.html#t%3ASrcInfo" >SrcInfo</A > loc => <A HREF="Language-Haskell-Exts-Pretty.html#t%3APretty" >Pretty</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AQualStmt" >QualStmt</A > loc)</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:FieldUpdate" ><A NAME="t%3AFieldUpdate" ></A ></A ><B >FieldUpdate</B > l </TD ><TD CLASS="declbut" ><A HREF="src/Language-Haskell-Exts-Annotated-Syntax.html#FieldUpdate" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="ndoc" >An <EM >fbind</EM > in a labeled construction or update 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:FieldUpdate" ><A NAME="v%3AFieldUpdate" ></A ></A ><B >FieldUpdate</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AQName" >QName</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l)</TD ><TD CLASS="rdoc" >ordinary label-expresion pair </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:FieldPun" ><A NAME="v%3AFieldPun" ></A ></A ><B >FieldPun</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AName" >Name</A > l)</TD ><TD CLASS="rdoc" >record field pun </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:FieldWildcard" ><A NAME="v%3AFieldWildcard" ></A ></A ><B >FieldWildcard</B > l</TD ><TD CLASS="rdoc" >record field wildcard </TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="section4" ><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'i:FieldUpdate')" ALT="show/hide" > Instances</TD ></TR ><TR ><TD CLASS="body" ><DIV ID="i:FieldUpdate" STYLE="display:block;" ><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0" ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Control-Monad.html#t%3AFunctor" >Functor</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AFieldUpdate" >FieldUpdate</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Typeable.html#t%3ATypeable1" >Typeable1</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AFieldUpdate" >FieldUpdate</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotated" >Annotated</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AFieldUpdate" >FieldUpdate</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-ExactPrint.html#t%3AExactP" >ExactP</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AFieldUpdate" >FieldUpdate</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Fixity.html#t%3AAppFixity" >AppFixity</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AFieldUpdate" >FieldUpdate</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AFieldUpdate" >FieldUpdate</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Data.html#t%3AData" >Data</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Data.html#t%3AData" >Data</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AFieldUpdate" >FieldUpdate</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AFieldUpdate" >FieldUpdate</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Text-Show.html#t%3AShow" >Show</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Text-Show.html#t%3AShow" >Show</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AFieldUpdate" >FieldUpdate</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-SrcLoc.html#t%3ASrcInfo" >SrcInfo</A > loc => <A HREF="Language-Haskell-Exts-Pretty.html#t%3APretty" >Pretty</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AFieldUpdate" >FieldUpdate</A > loc)</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:Alt" ><A NAME="t%3AAlt" ></A ></A ><B >Alt</B > l </TD ><TD CLASS="declbut" ><A HREF="src/Language-Haskell-Exts-Annotated-Syntax.html#Alt" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="ndoc" >An <EM >alt</EM > alternative in a <TT >case</TT > 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:Alt" ><A NAME="v%3AAlt" ></A ></A ><B >Alt</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3APat" >Pat</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AGuardedAlts" >GuardedAlts</A > l) (<A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Maybe.html#t%3AMaybe" >Maybe</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ABinds" >Binds</A > l))</TD ><TD CLASS="rdoc" ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="section4" ><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'i:Alt')" ALT="show/hide" > Instances</TD ></TR ><TR ><TD CLASS="body" ><DIV ID="i:Alt" STYLE="display:block;" ><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0" ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Control-Monad.html#t%3AFunctor" >Functor</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAlt" >Alt</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Typeable.html#t%3ATypeable1" >Typeable1</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAlt" >Alt</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotated" >Annotated</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAlt" >Alt</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-ExactPrint.html#t%3AExactP" >ExactP</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAlt" >Alt</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Fixity.html#t%3AAppFixity" >AppFixity</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAlt" >Alt</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAlt" >Alt</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Data.html#t%3AData" >Data</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Data.html#t%3AData" >Data</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAlt" >Alt</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAlt" >Alt</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Text-Show.html#t%3AShow" >Show</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Text-Show.html#t%3AShow" >Show</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAlt" >Alt</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-SrcLoc.html#t%3ASrcInfo" >SrcInfo</A > loc => <A HREF="Language-Haskell-Exts-Pretty.html#t%3APretty" >Pretty</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAlt" >Alt</A > loc)</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:GuardedAlts" ><A NAME="t%3AGuardedAlts" ></A ></A ><B >GuardedAlts</B > l </TD ><TD CLASS="declbut" ><A HREF="src/Language-Haskell-Exts-Annotated-Syntax.html#GuardedAlts" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="ndoc" >The right-hand sides of a <TT >case</TT > alternative, which may be a single right-hand side or a set of guarded ones. </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:UnGuardedAlt" ><A NAME="v%3AUnGuardedAlt" ></A ></A ><B >UnGuardedAlt</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l)</TD ><TD CLASS="rdoc" ><TT >-></TT > <EM >exp</EM > </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:GuardedAlts" ><A NAME="v%3AGuardedAlts" ></A ></A ><B >GuardedAlts</B > l [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AGuardedAlt" >GuardedAlt</A > l]</TD ><TD CLASS="rdoc" ><EM >gdpat</EM > </TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="section4" ><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'i:GuardedAlts')" ALT="show/hide" > Instances</TD ></TR ><TR ><TD CLASS="body" ><DIV ID="i:GuardedAlts" STYLE="display:block;" ><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0" ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Control-Monad.html#t%3AFunctor" >Functor</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AGuardedAlts" >GuardedAlts</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Typeable.html#t%3ATypeable1" >Typeable1</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AGuardedAlts" >GuardedAlts</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotated" >Annotated</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AGuardedAlts" >GuardedAlts</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-ExactPrint.html#t%3AExactP" >ExactP</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AGuardedAlts" >GuardedAlts</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Fixity.html#t%3AAppFixity" >AppFixity</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AGuardedAlts" >GuardedAlts</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AGuardedAlts" >GuardedAlts</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Data.html#t%3AData" >Data</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Data.html#t%3AData" >Data</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AGuardedAlts" >GuardedAlts</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AGuardedAlts" >GuardedAlts</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Text-Show.html#t%3AShow" >Show</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Text-Show.html#t%3AShow" >Show</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AGuardedAlts" >GuardedAlts</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-SrcLoc.html#t%3ASrcInfo" >SrcInfo</A > loc => <A HREF="Language-Haskell-Exts-Pretty.html#t%3APretty" >Pretty</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AGuardedAlts" >GuardedAlts</A > loc)</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:GuardedAlt" ><A NAME="t%3AGuardedAlt" ></A ></A ><B >GuardedAlt</B > l </TD ><TD CLASS="declbut" ><A HREF="src/Language-Haskell-Exts-Annotated-Syntax.html#GuardedAlt" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="ndoc" >A guarded case alternative <TT >|</TT > <EM >stmts</EM > <TT >-></TT > <EM >exp</EM >. </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:GuardedAlt" ><A NAME="v%3AGuardedAlt" ></A ></A ><B >GuardedAlt</B > l [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AStmt" >Stmt</A > l] (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l)</TD ><TD CLASS="rdoc" ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="section4" ><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'i:GuardedAlt')" ALT="show/hide" > Instances</TD ></TR ><TR ><TD CLASS="body" ><DIV ID="i:GuardedAlt" STYLE="display:block;" ><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0" ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Control-Monad.html#t%3AFunctor" >Functor</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AGuardedAlt" >GuardedAlt</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Typeable.html#t%3ATypeable1" >Typeable1</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AGuardedAlt" >GuardedAlt</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotated" >Annotated</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AGuardedAlt" >GuardedAlt</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-ExactPrint.html#t%3AExactP" >ExactP</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AGuardedAlt" >GuardedAlt</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Fixity.html#t%3AAppFixity" >AppFixity</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AGuardedAlt" >GuardedAlt</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AGuardedAlt" >GuardedAlt</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Data.html#t%3AData" >Data</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Data.html#t%3AData" >Data</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AGuardedAlt" >GuardedAlt</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AGuardedAlt" >GuardedAlt</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Text-Show.html#t%3AShow" >Show</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Text-Show.html#t%3AShow" >Show</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AGuardedAlt" >GuardedAlt</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-SrcLoc.html#t%3ASrcInfo" >SrcInfo</A > loc => <A HREF="Language-Haskell-Exts-Pretty.html#t%3APretty" >Pretty</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AGuardedAlt" >GuardedAlt</A > loc)</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:XAttr" ><A NAME="t%3AXAttr" ></A ></A ><B >XAttr</B > l </TD ><TD CLASS="declbut" ><A HREF="src/Language-Haskell-Exts-Annotated-Syntax.html#XAttr" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="ndoc" >An xml attribute, which is a name-expression pair. </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:XAttr" ><A NAME="v%3AXAttr" ></A ></A ><B >XAttr</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AXName" >XName</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l)</TD ><TD CLASS="rdoc" ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="section4" ><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'i:XAttr')" ALT="show/hide" > Instances</TD ></TR ><TR ><TD CLASS="body" ><DIV ID="i:XAttr" STYLE="display:block;" ><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0" ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Control-Monad.html#t%3AFunctor" >Functor</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AXAttr" >XAttr</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Typeable.html#t%3ATypeable1" >Typeable1</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AXAttr" >XAttr</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotated" >Annotated</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AXAttr" >XAttr</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-ExactPrint.html#t%3AExactP" >ExactP</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AXAttr" >XAttr</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Fixity.html#t%3AAppFixity" >AppFixity</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AXAttr" >XAttr</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AXAttr" >XAttr</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Data.html#t%3AData" >Data</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Data.html#t%3AData" >Data</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AXAttr" >XAttr</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AXAttr" >XAttr</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Text-Show.html#t%3AShow" >Show</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Text-Show.html#t%3AShow" >Show</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AXAttr" >XAttr</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-SrcLoc.html#t%3ASrcInfo" >SrcInfo</A > loc => <A HREF="Language-Haskell-Exts-Pretty.html#t%3APretty" >Pretty</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AXAttr" >XAttr</A > loc)</TD ></TR ></TABLE ></DIV ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="section1" ><A NAME="9" ><A NAME="9" >Patterns </A ></A ></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:Pat" ><A NAME="t%3APat" ></A ></A ><B >Pat</B > l </TD ><TD CLASS="declbut" ><A HREF="src/Language-Haskell-Exts-Annotated-Syntax.html#Pat" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="ndoc" >A pattern, to be matched against a value. </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:PVar" ><A NAME="v%3APVar" ></A ></A ><B >PVar</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AName" >Name</A > l)</TD ><TD CLASS="rdoc" >variable </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:PLit" ><A NAME="v%3APLit" ></A ></A ><B >PLit</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ALiteral" >Literal</A > l)</TD ><TD CLASS="rdoc" >literal constant </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:PNeg" ><A NAME="v%3APNeg" ></A ></A ><B >PNeg</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3APat" >Pat</A > l)</TD ><TD CLASS="rdoc" >negated pattern </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:PNPlusK" ><A NAME="v%3APNPlusK" ></A ></A ><B >PNPlusK</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AName" >Name</A > l) <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Prelude.html#t%3AInteger" >Integer</A ></TD ><TD CLASS="rdoc" >n+k pattern </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:PInfixApp" ><A NAME="v%3APInfixApp" ></A ></A ><B >PInfixApp</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3APat" >Pat</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AQName" >QName</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3APat" >Pat</A > l)</TD ><TD CLASS="rdoc" >pattern with an infix data constructor </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:PApp" ><A NAME="v%3APApp" ></A ></A ><B >PApp</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AQName" >QName</A > l) [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3APat" >Pat</A > l]</TD ><TD CLASS="rdoc" >data constructor and argument patterns </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:PTuple" ><A NAME="v%3APTuple" ></A ></A ><B >PTuple</B > l [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3APat" >Pat</A > l]</TD ><TD CLASS="rdoc" >tuple pattern </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:PList" ><A NAME="v%3APList" ></A ></A ><B >PList</B > l [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3APat" >Pat</A > l]</TD ><TD CLASS="rdoc" >list pattern </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:PParen" ><A NAME="v%3APParen" ></A ></A ><B >PParen</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3APat" >Pat</A > l)</TD ><TD CLASS="rdoc" >parenthesized pattern </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:PRec" ><A NAME="v%3APRec" ></A ></A ><B >PRec</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AQName" >QName</A > l) [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3APatField" >PatField</A > l]</TD ><TD CLASS="rdoc" >labelled pattern, record style </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:PAsPat" ><A NAME="v%3APAsPat" ></A ></A ><B >PAsPat</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AName" >Name</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3APat" >Pat</A > l)</TD ><TD CLASS="rdoc" ><TT >@</TT >-pattern </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:PWildCard" ><A NAME="v%3APWildCard" ></A ></A ><B >PWildCard</B > l</TD ><TD CLASS="rdoc" >wildcard pattern: <TT >_</TT > </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:PIrrPat" ><A NAME="v%3APIrrPat" ></A ></A ><B >PIrrPat</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3APat" >Pat</A > l)</TD ><TD CLASS="rdoc" >irrefutable pattern: <TT >~<EM >pat</EM ></TT > </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:PatTypeSig" ><A NAME="v%3APatTypeSig" ></A ></A ><B >PatTypeSig</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3APat" >Pat</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AType" >Type</A > l)</TD ><TD CLASS="rdoc" >pattern with type signature </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:PViewPat" ><A NAME="v%3APViewPat" ></A ></A ><B >PViewPat</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3APat" >Pat</A > l)</TD ><TD CLASS="rdoc" >view patterns of the form <TT >(<EM >exp</EM > -> <EM >pat</EM >)</TT > </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:PRPat" ><A NAME="v%3APRPat" ></A ></A ><B >PRPat</B > l [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ARPat" >RPat</A > l]</TD ><TD CLASS="rdoc" >regular list pattern </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:PXTag" ><A NAME="v%3APXTag" ></A ></A ><B >PXTag</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AXName" >XName</A > l) [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3APXAttr" >PXAttr</A > l] (<A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Maybe.html#t%3AMaybe" >Maybe</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3APat" >Pat</A > l)) [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3APat" >Pat</A > l]</TD ><TD CLASS="rdoc" >XML element pattern </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:PXETag" ><A NAME="v%3APXETag" ></A ></A ><B >PXETag</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AXName" >XName</A > l) [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3APXAttr" >PXAttr</A > l] (<A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Maybe.html#t%3AMaybe" >Maybe</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3APat" >Pat</A > l))</TD ><TD CLASS="rdoc" >XML singleton element pattern </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:PXPcdata" ><A NAME="v%3APXPcdata" ></A ></A ><B >PXPcdata</B > l <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Char.html#t%3AString" >String</A ></TD ><TD CLASS="rdoc" >XML PCDATA pattern </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:PXPatTag" ><A NAME="v%3APXPatTag" ></A ></A ><B >PXPatTag</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3APat" >Pat</A > l)</TD ><TD CLASS="rdoc" >XML embedded pattern </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:PXRPats" ><A NAME="v%3APXRPats" ></A ></A ><B >PXRPats</B > l [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ARPat" >RPat</A > l]</TD ><TD CLASS="rdoc" >XML regular list pattern </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:PExplTypeArg" ><A NAME="v%3APExplTypeArg" ></A ></A ><B >PExplTypeArg</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AQName" >QName</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AType" >Type</A > l)</TD ><TD CLASS="rdoc" >Explicit generics style type argument e.g. <TT >f {| Int |} x = ...</TT > </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:PQuasiQuote" ><A NAME="v%3APQuasiQuote" ></A ></A ><B >PQuasiQuote</B > l <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Char.html#t%3AString" >String</A > <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Char.html#t%3AString" >String</A ></TD ><TD CLASS="rdoc" >quasi quote pattern: <TT >[$<EM >name</EM >| <EM >string</EM > |]</TT > </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:PBangPat" ><A NAME="v%3APBangPat" ></A ></A ><B >PBangPat</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3APat" >Pat</A > l)</TD ><TD CLASS="rdoc" >strict (bang) pattern: <TT >f !x = ...</TT > </TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="section4" ><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'i:Pat')" ALT="show/hide" > Instances</TD ></TR ><TR ><TD CLASS="body" ><DIV ID="i:Pat" STYLE="display:block;" ><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0" ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Control-Monad.html#t%3AFunctor" >Functor</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3APat" >Pat</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Typeable.html#t%3ATypeable1" >Typeable1</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3APat" >Pat</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotated" >Annotated</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3APat" >Pat</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-ExactPrint.html#t%3AExactP" >ExactP</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3APat" >Pat</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Fixity.html#t%3AAppFixity" >AppFixity</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3APat" >Pat</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3APat" >Pat</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Data.html#t%3AData" >Data</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Data.html#t%3AData" >Data</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3APat" >Pat</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3APat" >Pat</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Text-Show.html#t%3AShow" >Show</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Text-Show.html#t%3AShow" >Show</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3APat" >Pat</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-SrcLoc.html#t%3ASrcInfo" >SrcInfo</A > loc => <A HREF="Language-Haskell-Exts-Pretty.html#t%3APretty" >Pretty</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3APat" >Pat</A > loc)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-SrcLoc.html#t%3ASrcInfo" >SrcInfo</A > loc => <A HREF="Language-Haskell-Exts-Parser.html#t%3AParseable" >Parseable</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3APat" >Pat</A > loc)</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:PatField" ><A NAME="t%3APatField" ></A ></A ><B >PatField</B > l </TD ><TD CLASS="declbut" ><A HREF="src/Language-Haskell-Exts-Annotated-Syntax.html#PatField" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="ndoc" >An <EM >fpat</EM > in a labeled record pattern. </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:PFieldPat" ><A NAME="v%3APFieldPat" ></A ></A ><B >PFieldPat</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AQName" >QName</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3APat" >Pat</A > l)</TD ><TD CLASS="rdoc" >ordinary label-pattern pair </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:PFieldPun" ><A NAME="v%3APFieldPun" ></A ></A ><B >PFieldPun</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AName" >Name</A > l)</TD ><TD CLASS="rdoc" >record field pun </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:PFieldWildcard" ><A NAME="v%3APFieldWildcard" ></A ></A ><B >PFieldWildcard</B > l</TD ><TD CLASS="rdoc" >record field wildcard </TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="section4" ><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'i:PatField')" ALT="show/hide" > Instances</TD ></TR ><TR ><TD CLASS="body" ><DIV ID="i:PatField" STYLE="display:block;" ><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0" ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Control-Monad.html#t%3AFunctor" >Functor</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3APatField" >PatField</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Typeable.html#t%3ATypeable1" >Typeable1</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3APatField" >PatField</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotated" >Annotated</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3APatField" >PatField</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-ExactPrint.html#t%3AExactP" >ExactP</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3APatField" >PatField</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Fixity.html#t%3AAppFixity" >AppFixity</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3APatField" >PatField</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3APatField" >PatField</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Data.html#t%3AData" >Data</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Data.html#t%3AData" >Data</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3APatField" >PatField</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3APatField" >PatField</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Text-Show.html#t%3AShow" >Show</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Text-Show.html#t%3AShow" >Show</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3APatField" >PatField</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-SrcLoc.html#t%3ASrcInfo" >SrcInfo</A > loc => <A HREF="Language-Haskell-Exts-Pretty.html#t%3APretty" >Pretty</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3APatField" >PatField</A > loc)</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:PXAttr" ><A NAME="t%3APXAttr" ></A ></A ><B >PXAttr</B > l </TD ><TD CLASS="declbut" ><A HREF="src/Language-Haskell-Exts-Annotated-Syntax.html#PXAttr" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="ndoc" >An XML attribute in a pattern. </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:PXAttr" ><A NAME="v%3APXAttr" ></A ></A ><B >PXAttr</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AXName" >XName</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3APat" >Pat</A > l)</TD ><TD CLASS="rdoc" ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="section4" ><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'i:PXAttr')" ALT="show/hide" > Instances</TD ></TR ><TR ><TD CLASS="body" ><DIV ID="i:PXAttr" STYLE="display:block;" ><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0" ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Control-Monad.html#t%3AFunctor" >Functor</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3APXAttr" >PXAttr</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Typeable.html#t%3ATypeable1" >Typeable1</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3APXAttr" >PXAttr</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotated" >Annotated</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3APXAttr" >PXAttr</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-ExactPrint.html#t%3AExactP" >ExactP</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3APXAttr" >PXAttr</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Fixity.html#t%3AAppFixity" >AppFixity</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3APXAttr" >PXAttr</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3APXAttr" >PXAttr</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Data.html#t%3AData" >Data</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Data.html#t%3AData" >Data</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3APXAttr" >PXAttr</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3APXAttr" >PXAttr</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Text-Show.html#t%3AShow" >Show</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Text-Show.html#t%3AShow" >Show</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3APXAttr" >PXAttr</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-SrcLoc.html#t%3ASrcInfo" >SrcInfo</A > loc => <A HREF="Language-Haskell-Exts-Pretty.html#t%3APretty" >Pretty</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3APXAttr" >PXAttr</A > loc)</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:RPat" ><A NAME="t%3ARPat" ></A ></A ><B >RPat</B > l </TD ><TD CLASS="declbut" ><A HREF="src/Language-Haskell-Exts-Annotated-Syntax.html#RPat" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="ndoc" >An entity in a regular pattern. </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:RPOp" ><A NAME="v%3ARPOp" ></A ></A ><B >RPOp</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ARPat" >RPat</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ARPatOp" >RPatOp</A > l)</TD ><TD CLASS="rdoc" >operator pattern, e.g. pat* </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:RPEither" ><A NAME="v%3ARPEither" ></A ></A ><B >RPEither</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ARPat" >RPat</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ARPat" >RPat</A > l)</TD ><TD CLASS="rdoc" >choice pattern, e.g. (1 | 2) </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:RPSeq" ><A NAME="v%3ARPSeq" ></A ></A ><B >RPSeq</B > l [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ARPat" >RPat</A > l]</TD ><TD CLASS="rdoc" >sequence pattern, e.g. (| 1, 2, 3 |) </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:RPGuard" ><A NAME="v%3ARPGuard" ></A ></A ><B >RPGuard</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3APat" >Pat</A > l) [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AStmt" >Stmt</A > l]</TD ><TD CLASS="rdoc" >guarded pattern, e.g. (| p | p < 3 |) </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:RPCAs" ><A NAME="v%3ARPCAs" ></A ></A ><B >RPCAs</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AName" >Name</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ARPat" >RPat</A > l)</TD ><TD CLASS="rdoc" >non-linear variable binding, e.g. (foo@:(1 | 2))* </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:RPAs" ><A NAME="v%3ARPAs" ></A ></A ><B >RPAs</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AName" >Name</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ARPat" >RPat</A > l)</TD ><TD CLASS="rdoc" >linear variable binding, e.g. foo@(1 | 2) </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:RPParen" ><A NAME="v%3ARPParen" ></A ></A ><B >RPParen</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ARPat" >RPat</A > l)</TD ><TD CLASS="rdoc" >parenthesised pattern, e.g. (2*) </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:RPPat" ><A NAME="v%3ARPPat" ></A ></A ><B >RPPat</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3APat" >Pat</A > l)</TD ><TD CLASS="rdoc" >an ordinary pattern </TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="section4" ><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'i:RPat')" ALT="show/hide" > Instances</TD ></TR ><TR ><TD CLASS="body" ><DIV ID="i:RPat" STYLE="display:block;" ><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0" ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Control-Monad.html#t%3AFunctor" >Functor</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ARPat" >RPat</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Typeable.html#t%3ATypeable1" >Typeable1</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ARPat" >RPat</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotated" >Annotated</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ARPat" >RPat</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-ExactPrint.html#t%3AExactP" >ExactP</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ARPat" >RPat</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Fixity.html#t%3AAppFixity" >AppFixity</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ARPat" >RPat</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ARPat" >RPat</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Data.html#t%3AData" >Data</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Data.html#t%3AData" >Data</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ARPat" >RPat</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ARPat" >RPat</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Text-Show.html#t%3AShow" >Show</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Text-Show.html#t%3AShow" >Show</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ARPat" >RPat</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-SrcLoc.html#t%3ASrcInfo" >SrcInfo</A > loc => <A HREF="Language-Haskell-Exts-Pretty.html#t%3APretty" >Pretty</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ARPat" >RPat</A > loc)</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:RPatOp" ><A NAME="t%3ARPatOp" ></A ></A ><B >RPatOp</B > l </TD ><TD CLASS="declbut" ><A HREF="src/Language-Haskell-Exts-Annotated-Syntax.html#RPatOp" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="ndoc" >A regular pattern operator. </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:RPStar" ><A NAME="v%3ARPStar" ></A ></A ><B >RPStar</B > l</TD ><TD CLASS="rdoc" ><TT >*</TT > = 0 or more </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:RPStarG" ><A NAME="v%3ARPStarG" ></A ></A ><B >RPStarG</B > l</TD ><TD CLASS="rdoc" ><TT >*!</TT > = 0 or more, greedy </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:RPPlus" ><A NAME="v%3ARPPlus" ></A ></A ><B >RPPlus</B > l</TD ><TD CLASS="rdoc" ><TT >+</TT > = 1 or more </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:RPPlusG" ><A NAME="v%3ARPPlusG" ></A ></A ><B >RPPlusG</B > l</TD ><TD CLASS="rdoc" ><TT >+!</TT > = 1 or more, greedy </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:RPOpt" ><A NAME="v%3ARPOpt" ></A ></A ><B >RPOpt</B > l</TD ><TD CLASS="rdoc" ><TT >?</TT > = 0 or 1 </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:RPOptG" ><A NAME="v%3ARPOptG" ></A ></A ><B >RPOptG</B > l</TD ><TD CLASS="rdoc" ><TT >?!</TT > = 0 or 1, greedy </TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="section4" ><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'i:RPatOp')" ALT="show/hide" > Instances</TD ></TR ><TR ><TD CLASS="body" ><DIV ID="i:RPatOp" STYLE="display:block;" ><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0" ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Control-Monad.html#t%3AFunctor" >Functor</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ARPatOp" >RPatOp</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Typeable.html#t%3ATypeable1" >Typeable1</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ARPatOp" >RPatOp</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotated" >Annotated</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ARPatOp" >RPatOp</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-ExactPrint.html#t%3AExactP" >ExactP</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ARPatOp" >RPatOp</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ARPatOp" >RPatOp</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Data.html#t%3AData" >Data</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Data.html#t%3AData" >Data</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ARPatOp" >RPatOp</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ARPatOp" >RPatOp</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Text-Show.html#t%3AShow" >Show</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Text-Show.html#t%3AShow" >Show</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ARPatOp" >RPatOp</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Pretty.html#t%3APretty" >Pretty</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ARPatOp" >RPatOp</A > l)</TD ></TR ></TABLE ></DIV ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="section1" ><A NAME="10" ><A NAME="10" >Literals </A ></A ></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:Literal" ><A NAME="t%3ALiteral" ></A ></A ><B >Literal</B > l </TD ><TD CLASS="declbut" ><A HREF="src/Language-Haskell-Exts-Annotated-Syntax.html#Literal" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="ndoc" ><EM >literal</EM > Values of this type hold the abstract value of the literal, along with the precise string representation used. For example, <TT >10</TT >, <TT >0o12</TT > and <TT >0xa</TT > have the same value representation, but each carry a different string representation. </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:Char" ><A NAME="v%3AChar" ></A ></A ><B >Char</B > l <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Char.html#t%3AChar" >Char</A > <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Char.html#t%3AString" >String</A ></TD ><TD CLASS="rdoc" >character literal </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:String" ><A NAME="v%3AString" ></A ></A ><B >String</B > l <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Char.html#t%3AString" >String</A > <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Char.html#t%3AString" >String</A ></TD ><TD CLASS="rdoc" >string literal </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:Int" ><A NAME="v%3AInt" ></A ></A ><B >Int</B > l <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Prelude.html#t%3AInteger" >Integer</A > <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Char.html#t%3AString" >String</A ></TD ><TD CLASS="rdoc" >integer literal </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:Frac" ><A NAME="v%3AFrac" ></A ></A ><B >Frac</B > l <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Prelude.html#t%3ARational" >Rational</A > <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Char.html#t%3AString" >String</A ></TD ><TD CLASS="rdoc" >floating point literal </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:PrimInt" ><A NAME="v%3APrimInt" ></A ></A ><B >PrimInt</B > l <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Prelude.html#t%3AInteger" >Integer</A > <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Char.html#t%3AString" >String</A ></TD ><TD CLASS="rdoc" >unboxed integer literal </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:PrimWord" ><A NAME="v%3APrimWord" ></A ></A ><B >PrimWord</B > l <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Prelude.html#t%3AInteger" >Integer</A > <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Char.html#t%3AString" >String</A ></TD ><TD CLASS="rdoc" >unboxed word literal </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:PrimFloat" ><A NAME="v%3APrimFloat" ></A ></A ><B >PrimFloat</B > l <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Prelude.html#t%3ARational" >Rational</A > <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Char.html#t%3AString" >String</A ></TD ><TD CLASS="rdoc" >unboxed float literal </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:PrimDouble" ><A NAME="v%3APrimDouble" ></A ></A ><B >PrimDouble</B > l <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Prelude.html#t%3ARational" >Rational</A > <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Char.html#t%3AString" >String</A ></TD ><TD CLASS="rdoc" >unboxed double literal </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:PrimChar" ><A NAME="v%3APrimChar" ></A ></A ><B >PrimChar</B > l <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Char.html#t%3AChar" >Char</A > <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Char.html#t%3AString" >String</A ></TD ><TD CLASS="rdoc" >unboxed character literal </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:PrimString" ><A NAME="v%3APrimString" ></A ></A ><B >PrimString</B > l <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Char.html#t%3AString" >String</A > <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Char.html#t%3AString" >String</A ></TD ><TD CLASS="rdoc" >unboxed string literal </TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="section4" ><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'i:Literal')" ALT="show/hide" > Instances</TD ></TR ><TR ><TD CLASS="body" ><DIV ID="i:Literal" STYLE="display:block;" ><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0" ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Control-Monad.html#t%3AFunctor" >Functor</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ALiteral" >Literal</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Typeable.html#t%3ATypeable1" >Typeable1</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ALiteral" >Literal</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotated" >Annotated</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ALiteral" >Literal</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-ExactPrint.html#t%3AExactP" >ExactP</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ALiteral" >Literal</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ALiteral" >Literal</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Data.html#t%3AData" >Data</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Data.html#t%3AData" >Data</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ALiteral" >Literal</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ALiteral" >Literal</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Text-Show.html#t%3AShow" >Show</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Text-Show.html#t%3AShow" >Show</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ALiteral" >Literal</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Pretty.html#t%3APretty" >Pretty</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ALiteral" >Literal</A > l)</TD ></TR ></TABLE ></DIV ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="section1" ><A NAME="11" ><A NAME="11" >Variables, Constructors and Operators </A ></A ></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:ModuleName" ><A NAME="t%3AModuleName" ></A ></A ><B >ModuleName</B > l </TD ><TD CLASS="declbut" ><A HREF="src/Language-Haskell-Exts-Annotated-Syntax.html#ModuleName" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="ndoc" >The name of a Haskell module. </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:ModuleName" ><A NAME="v%3AModuleName" ></A ></A ><B >ModuleName</B > l <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Char.html#t%3AString" >String</A ></TD ><TD CLASS="rdoc" ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="section4" ><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'i:ModuleName')" ALT="show/hide" > Instances</TD ></TR ><TR ><TD CLASS="body" ><DIV ID="i:ModuleName" STYLE="display:block;" ><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0" ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Control-Monad.html#t%3AFunctor" >Functor</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AModuleName" >ModuleName</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Typeable.html#t%3ATypeable1" >Typeable1</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AModuleName" >ModuleName</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotated" >Annotated</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AModuleName" >ModuleName</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-ExactPrint.html#t%3AExactP" >ExactP</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AModuleName" >ModuleName</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AModuleName" >ModuleName</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Data.html#t%3AData" >Data</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Data.html#t%3AData" >Data</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AModuleName" >ModuleName</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AModuleName" >ModuleName</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Text-Show.html#t%3AShow" >Show</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Text-Show.html#t%3AShow" >Show</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AModuleName" >ModuleName</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Pretty.html#t%3APretty" >Pretty</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AModuleName" >ModuleName</A > l)</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:QName" ><A NAME="t%3AQName" ></A ></A ><B >QName</B > l </TD ><TD CLASS="declbut" ><A HREF="src/Language-Haskell-Exts-Annotated-Syntax.html#QName" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="ndoc" >This type is used to represent qualified variables, and also qualified constructors. </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:Qual" ><A NAME="v%3AQual" ></A ></A ><B >Qual</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AModuleName" >ModuleName</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AName" >Name</A > l)</TD ><TD CLASS="rdoc" >name qualified with a module name </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:UnQual" ><A NAME="v%3AUnQual" ></A ></A ><B >UnQual</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AName" >Name</A > l)</TD ><TD CLASS="rdoc" >unqualified local name </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:Special" ><A NAME="v%3ASpecial" ></A ></A ><B >Special</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ASpecialCon" >SpecialCon</A > l)</TD ><TD CLASS="rdoc" >built-in constructor with special syntax </TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="section4" ><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'i:QName')" ALT="show/hide" > Instances</TD ></TR ><TR ><TD CLASS="body" ><DIV ID="i:QName" STYLE="display:block;" ><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0" ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Control-Monad.html#t%3AFunctor" >Functor</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AQName" >QName</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Typeable.html#t%3ATypeable1" >Typeable1</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AQName" >QName</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotated" >Annotated</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AQName" >QName</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-ExactPrint.html#t%3AExactP" >ExactP</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AQName" >QName</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AQName" >QName</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Data.html#t%3AData" >Data</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Data.html#t%3AData" >Data</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AQName" >QName</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AQName" >QName</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Text-Show.html#t%3AShow" >Show</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Text-Show.html#t%3AShow" >Show</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AQName" >QName</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Pretty.html#t%3APretty" >Pretty</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AQName" >QName</A > l)</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:Name" ><A NAME="t%3AName" ></A ></A ><B >Name</B > l </TD ><TD CLASS="declbut" ><A HREF="src/Language-Haskell-Exts-Annotated-Syntax.html#Name" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="ndoc" >This type is used to represent variables, and also constructors. </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:Ident" ><A NAME="v%3AIdent" ></A ></A ><B >Ident</B > l <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Char.html#t%3AString" >String</A ></TD ><TD CLASS="rdoc" ><EM >varid</EM > or <EM >conid</EM >. </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:Symbol" ><A NAME="v%3ASymbol" ></A ></A ><B >Symbol</B > l <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Char.html#t%3AString" >String</A ></TD ><TD CLASS="rdoc" ><EM >varsym</EM > or <EM >consym</EM > </TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="section4" ><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'i:Name')" ALT="show/hide" > Instances</TD ></TR ><TR ><TD CLASS="body" ><DIV ID="i:Name" STYLE="display:block;" ><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0" ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Control-Monad.html#t%3AFunctor" >Functor</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AName" >Name</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Typeable.html#t%3ATypeable1" >Typeable1</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AName" >Name</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotated" >Annotated</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AName" >Name</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-ExactPrint.html#t%3AExactP" >ExactP</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AName" >Name</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AName" >Name</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Data.html#t%3AData" >Data</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Data.html#t%3AData" >Data</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AName" >Name</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AName" >Name</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Text-Show.html#t%3AShow" >Show</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Text-Show.html#t%3AShow" >Show</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AName" >Name</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Pretty.html#t%3APretty" >Pretty</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AName" >Name</A > l)</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:QOp" ><A NAME="t%3AQOp" ></A ></A ><B >QOp</B > l </TD ><TD CLASS="declbut" ><A HREF="src/Language-Haskell-Exts-Annotated-Syntax.html#QOp" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="ndoc" >Possibly qualified infix operators (<EM >qop</EM >), appearing in expressions. </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:QVarOp" ><A NAME="v%3AQVarOp" ></A ></A ><B >QVarOp</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AQName" >QName</A > l)</TD ><TD CLASS="rdoc" >variable operator (<EM >qvarop</EM >) </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:QConOp" ><A NAME="v%3AQConOp" ></A ></A ><B >QConOp</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AQName" >QName</A > l)</TD ><TD CLASS="rdoc" >constructor operator (<EM >qconop</EM >) </TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="section4" ><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'i:QOp')" ALT="show/hide" > Instances</TD ></TR ><TR ><TD CLASS="body" ><DIV ID="i:QOp" STYLE="display:block;" ><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0" ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Control-Monad.html#t%3AFunctor" >Functor</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AQOp" >QOp</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Typeable.html#t%3ATypeable1" >Typeable1</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AQOp" >QOp</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotated" >Annotated</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AQOp" >QOp</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-ExactPrint.html#t%3AExactP" >ExactP</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AQOp" >QOp</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AQOp" >QOp</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Data.html#t%3AData" >Data</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Data.html#t%3AData" >Data</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AQOp" >QOp</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AQOp" >QOp</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Text-Show.html#t%3AShow" >Show</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Text-Show.html#t%3AShow" >Show</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AQOp" >QOp</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Pretty.html#t%3APretty" >Pretty</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AQOp" >QOp</A > l)</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:Op" ><A NAME="t%3AOp" ></A ></A ><B >Op</B > l </TD ><TD CLASS="declbut" ><A HREF="src/Language-Haskell-Exts-Annotated-Syntax.html#Op" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="ndoc" >Operators appearing in <TT >infix</TT > declarations are never qualified. </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:VarOp" ><A NAME="v%3AVarOp" ></A ></A ><B >VarOp</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AName" >Name</A > l)</TD ><TD CLASS="rdoc" >variable operator (<EM >varop</EM >) </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:ConOp" ><A NAME="v%3AConOp" ></A ></A ><B >ConOp</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AName" >Name</A > l)</TD ><TD CLASS="rdoc" >constructor operator (<EM >conop</EM >) </TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="section4" ><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'i:Op')" ALT="show/hide" > Instances</TD ></TR ><TR ><TD CLASS="body" ><DIV ID="i:Op" STYLE="display:block;" ><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0" ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Control-Monad.html#t%3AFunctor" >Functor</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AOp" >Op</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Typeable.html#t%3ATypeable1" >Typeable1</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AOp" >Op</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotated" >Annotated</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AOp" >Op</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-ExactPrint.html#t%3AExactP" >ExactP</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AOp" >Op</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AOp" >Op</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Data.html#t%3AData" >Data</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Data.html#t%3AData" >Data</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AOp" >Op</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AOp" >Op</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Text-Show.html#t%3AShow" >Show</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Text-Show.html#t%3AShow" >Show</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AOp" >Op</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Pretty.html#t%3APretty" >Pretty</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AOp" >Op</A > l)</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:SpecialCon" ><A NAME="t%3ASpecialCon" ></A ></A ><B >SpecialCon</B > l </TD ><TD CLASS="declbut" ><A HREF="src/Language-Haskell-Exts-Annotated-Syntax.html#SpecialCon" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="ndoc" >Constructors with special syntax. These names are never qualified, and always refer to builtin type or data constructors. </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:UnitCon" ><A NAME="v%3AUnitCon" ></A ></A ><B >UnitCon</B > l</TD ><TD CLASS="rdoc" >unit type and data constructor <TT >()</TT > </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:ListCon" ><A NAME="v%3AListCon" ></A ></A ><B >ListCon</B > l</TD ><TD CLASS="rdoc" >list type constructor <TT >[]</TT > </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:FunCon" ><A NAME="v%3AFunCon" ></A ></A ><B >FunCon</B > l</TD ><TD CLASS="rdoc" >function type constructor <TT >-></TT > </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:TupleCon" ><A NAME="v%3ATupleCon" ></A ></A ><B >TupleCon</B > l <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ABoxed" >Boxed</A > <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Int.html#t%3AInt" >Int</A ></TD ><TD CLASS="rdoc" ><EM >n</EM >-ary tuple type and data constructors <TT >(,)</TT > etc, possibly boxed <TT >(#,#)</TT > </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:Cons" ><A NAME="v%3ACons" ></A ></A ><B >Cons</B > l</TD ><TD CLASS="rdoc" >list data constructor <TT >(:)</TT > </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:UnboxedSingleCon" ><A NAME="v%3AUnboxedSingleCon" ></A ></A ><B >UnboxedSingleCon</B > l</TD ><TD CLASS="rdoc" >unboxed singleton tuple constructor <TT >(# #)</TT > </TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="section4" ><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'i:SpecialCon')" ALT="show/hide" > Instances</TD ></TR ><TR ><TD CLASS="body" ><DIV ID="i:SpecialCon" STYLE="display:block;" ><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0" ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Control-Monad.html#t%3AFunctor" >Functor</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ASpecialCon" >SpecialCon</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Typeable.html#t%3ATypeable1" >Typeable1</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ASpecialCon" >SpecialCon</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotated" >Annotated</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ASpecialCon" >SpecialCon</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-ExactPrint.html#t%3AExactP" >ExactP</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ASpecialCon" >SpecialCon</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ASpecialCon" >SpecialCon</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Data.html#t%3AData" >Data</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Data.html#t%3AData" >Data</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ASpecialCon" >SpecialCon</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ASpecialCon" >SpecialCon</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Text-Show.html#t%3AShow" >Show</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Text-Show.html#t%3AShow" >Show</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ASpecialCon" >SpecialCon</A > l)</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:CName" ><A NAME="t%3ACName" ></A ></A ><B >CName</B > l </TD ><TD CLASS="declbut" ><A HREF="src/Language-Haskell-Exts-Annotated-Syntax.html#CName" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="ndoc" >A name (<EM >cname</EM >) of a component of a class or data type in an <TT >import</TT > or export specification. </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:VarName" ><A NAME="v%3AVarName" ></A ></A ><B >VarName</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AName" >Name</A > l)</TD ><TD CLASS="rdoc" >name of a method or field </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:ConName" ><A NAME="v%3AConName" ></A ></A ><B >ConName</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AName" >Name</A > l)</TD ><TD CLASS="rdoc" >name of a data constructor </TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="section4" ><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'i:CName')" ALT="show/hide" > Instances</TD ></TR ><TR ><TD CLASS="body" ><DIV ID="i:CName" STYLE="display:block;" ><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0" ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Control-Monad.html#t%3AFunctor" >Functor</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ACName" >CName</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Typeable.html#t%3ATypeable1" >Typeable1</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ACName" >CName</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotated" >Annotated</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ACName" >CName</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-ExactPrint.html#t%3AExactP" >ExactP</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ACName" >CName</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ACName" >CName</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Data.html#t%3AData" >Data</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Data.html#t%3AData" >Data</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ACName" >CName</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ACName" >CName</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Text-Show.html#t%3AShow" >Show</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Text-Show.html#t%3AShow" >Show</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ACName" >CName</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Pretty.html#t%3APretty" >Pretty</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ACName" >CName</A > l)</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:IPName" ><A NAME="t%3AIPName" ></A ></A ><B >IPName</B > l </TD ><TD CLASS="declbut" ><A HREF="src/Language-Haskell-Exts-Annotated-Syntax.html#IPName" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="ndoc" >An implicit parameter name. </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:IPDup" ><A NAME="v%3AIPDup" ></A ></A ><B >IPDup</B > l <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Char.html#t%3AString" >String</A ></TD ><TD CLASS="rdoc" >?<EM >ident</EM >, non-linear implicit parameter </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:IPLin" ><A NAME="v%3AIPLin" ></A ></A ><B >IPLin</B > l <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Char.html#t%3AString" >String</A ></TD ><TD CLASS="rdoc" >%<EM >ident</EM >, linear implicit parameter </TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="section4" ><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'i:IPName')" ALT="show/hide" > Instances</TD ></TR ><TR ><TD CLASS="body" ><DIV ID="i:IPName" STYLE="display:block;" ><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0" ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Control-Monad.html#t%3AFunctor" >Functor</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AIPName" >IPName</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Typeable.html#t%3ATypeable1" >Typeable1</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AIPName" >IPName</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotated" >Annotated</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AIPName" >IPName</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-ExactPrint.html#t%3AExactP" >ExactP</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AIPName" >IPName</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AIPName" >IPName</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Data.html#t%3AData" >Data</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Data.html#t%3AData" >Data</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AIPName" >IPName</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AIPName" >IPName</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Text-Show.html#t%3AShow" >Show</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Text-Show.html#t%3AShow" >Show</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AIPName" >IPName</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Pretty.html#t%3APretty" >Pretty</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AIPName" >IPName</A > l)</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:XName" ><A NAME="t%3AXName" ></A ></A ><B >XName</B > l </TD ><TD CLASS="declbut" ><A HREF="src/Language-Haskell-Exts-Annotated-Syntax.html#XName" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="ndoc" >The name of an xml element or attribute, possibly qualified with a namespace. </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:XName" ><A NAME="v%3AXName" ></A ></A ><B >XName</B > l <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Char.html#t%3AString" >String</A ></TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:XDomName" ><A NAME="v%3AXDomName" ></A ></A ><B >XDomName</B > l <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Char.html#t%3AString" >String</A > <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Char.html#t%3AString" >String</A ></TD ><TD CLASS="rdoc" ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="section4" ><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'i:XName')" ALT="show/hide" > Instances</TD ></TR ><TR ><TD CLASS="body" ><DIV ID="i:XName" STYLE="display:block;" ><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0" ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Control-Monad.html#t%3AFunctor" >Functor</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AXName" >XName</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Typeable.html#t%3ATypeable1" >Typeable1</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AXName" >XName</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotated" >Annotated</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AXName" >XName</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-ExactPrint.html#t%3AExactP" >ExactP</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AXName" >XName</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AXName" >XName</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Data.html#t%3AData" >Data</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Data.html#t%3AData" >Data</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AXName" >XName</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AXName" >XName</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Text-Show.html#t%3AShow" >Show</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Text-Show.html#t%3AShow" >Show</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AXName" >XName</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Pretty.html#t%3APretty" >Pretty</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AXName" >XName</A > l)</TD ></TR ></TABLE ></DIV ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="section1" ><A NAME="12" ><A NAME="12" >Template Haskell </A ></A ></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:Bracket" ><A NAME="t%3ABracket" ></A ></A ><B >Bracket</B > l </TD ><TD CLASS="declbut" ><A HREF="src/Language-Haskell-Exts-Annotated-Syntax.html#Bracket" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="ndoc" >A template haskell bracket 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:ExpBracket" ><A NAME="v%3AExpBracket" ></A ></A ><B >ExpBracket</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l)</TD ><TD CLASS="rdoc" >expression bracket: <TT >[| ... |]</TT > </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:PatBracket" ><A NAME="v%3APatBracket" ></A ></A ><B >PatBracket</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3APat" >Pat</A > l)</TD ><TD CLASS="rdoc" >pattern bracket: <TT >[p| ... |]</TT > </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:TypeBracket" ><A NAME="v%3ATypeBracket" ></A ></A ><B >TypeBracket</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AType" >Type</A > l)</TD ><TD CLASS="rdoc" >type bracket: <TT >[t| ... |]</TT > </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:DeclBracket" ><A NAME="v%3ADeclBracket" ></A ></A ><B >DeclBracket</B > l [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ADecl" >Decl</A > l]</TD ><TD CLASS="rdoc" >declaration bracket: <TT >[d| ... |]</TT > </TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="section4" ><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'i:Bracket')" ALT="show/hide" > Instances</TD ></TR ><TR ><TD CLASS="body" ><DIV ID="i:Bracket" STYLE="display:block;" ><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0" ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Control-Monad.html#t%3AFunctor" >Functor</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ABracket" >Bracket</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Typeable.html#t%3ATypeable1" >Typeable1</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ABracket" >Bracket</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotated" >Annotated</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ABracket" >Bracket</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-ExactPrint.html#t%3AExactP" >ExactP</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ABracket" >Bracket</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Fixity.html#t%3AAppFixity" >AppFixity</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ABracket" >Bracket</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ABracket" >Bracket</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Data.html#t%3AData" >Data</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Data.html#t%3AData" >Data</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ABracket" >Bracket</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ABracket" >Bracket</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Text-Show.html#t%3AShow" >Show</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Text-Show.html#t%3AShow" >Show</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ABracket" >Bracket</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-SrcLoc.html#t%3ASrcInfo" >SrcInfo</A > loc => <A HREF="Language-Haskell-Exts-Pretty.html#t%3APretty" >Pretty</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ABracket" >Bracket</A > loc)</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:Splice" ><A NAME="t%3ASplice" ></A ></A ><B >Splice</B > l </TD ><TD CLASS="declbut" ><A HREF="src/Language-Haskell-Exts-Annotated-Syntax.html#Splice" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="ndoc" >A template haskell splice 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:IdSplice" ><A NAME="v%3AIdSplice" ></A ></A ><B >IdSplice</B > l <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Char.html#t%3AString" >String</A ></TD ><TD CLASS="rdoc" >variable splice: <TT >$var</TT > </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:ParenSplice" ><A NAME="v%3AParenSplice" ></A ></A ><B >ParenSplice</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l)</TD ><TD CLASS="rdoc" >parenthesised expression splice: <TT >$(<EM >exp</EM >)</TT > </TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="section4" ><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'i:Splice')" ALT="show/hide" > Instances</TD ></TR ><TR ><TD CLASS="body" ><DIV ID="i:Splice" STYLE="display:block;" ><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0" ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Control-Monad.html#t%3AFunctor" >Functor</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ASplice" >Splice</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Typeable.html#t%3ATypeable1" >Typeable1</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ASplice" >Splice</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotated" >Annotated</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ASplice" >Splice</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-ExactPrint.html#t%3AExactP" >ExactP</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ASplice" >Splice</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Fixity.html#t%3AAppFixity" >AppFixity</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ASplice" >Splice</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ASplice" >Splice</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Data.html#t%3AData" >Data</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Data.html#t%3AData" >Data</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ASplice" >Splice</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ASplice" >Splice</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Text-Show.html#t%3AShow" >Show</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Text-Show.html#t%3AShow" >Show</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ASplice" >Splice</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-SrcLoc.html#t%3ASrcInfo" >SrcInfo</A > loc => <A HREF="Language-Haskell-Exts-Pretty.html#t%3APretty" >Pretty</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ASplice" >Splice</A > loc)</TD ></TR ></TABLE ></DIV ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="section1" ><A NAME="13" ><A NAME="13" >FFI </A ></A ></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:Safety" ><A NAME="t%3ASafety" ></A ></A ><B >Safety</B > l </TD ><TD CLASS="declbut" ><A HREF="src/Language-Haskell-Exts-Annotated-Syntax.html#Safety" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="ndoc" >The safety of a foreign function call. </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:PlayRisky" ><A NAME="v%3APlayRisky" ></A ></A ><B >PlayRisky</B > l</TD ><TD CLASS="rdoc" >unsafe </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:PlaySafe" ><A NAME="v%3APlaySafe" ></A ></A ><B >PlaySafe</B > l <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Bool.html#t%3ABool" >Bool</A ></TD ><TD CLASS="rdoc" >safe (<TT ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Bool.html#v%3AFalse" >False</A ></TT >) or threadsafe (<TT ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Bool.html#v%3ATrue" >True</A ></TT >) </TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="section4" ><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'i:Safety')" ALT="show/hide" > Instances</TD ></TR ><TR ><TD CLASS="body" ><DIV ID="i:Safety" STYLE="display:block;" ><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0" ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Control-Monad.html#t%3AFunctor" >Functor</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ASafety" >Safety</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Typeable.html#t%3ATypeable1" >Typeable1</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ASafety" >Safety</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotated" >Annotated</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ASafety" >Safety</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-ExactPrint.html#t%3AExactP" >ExactP</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ASafety" >Safety</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ASafety" >Safety</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Data.html#t%3AData" >Data</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Data.html#t%3AData" >Data</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ASafety" >Safety</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ASafety" >Safety</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Text-Show.html#t%3AShow" >Show</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Text-Show.html#t%3AShow" >Show</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ASafety" >Safety</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Pretty.html#t%3APretty" >Pretty</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ASafety" >Safety</A > l)</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:CallConv" ><A NAME="t%3ACallConv" ></A ></A ><B >CallConv</B > l </TD ><TD CLASS="declbut" ><A HREF="src/Language-Haskell-Exts-Annotated-Syntax.html#CallConv" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="ndoc" >The calling convention of a foreign function call. </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:StdCall" ><A NAME="v%3AStdCall" ></A ></A ><B >StdCall</B > l</TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:CCall" ><A NAME="v%3ACCall" ></A ></A ><B >CCall</B > l</TD ><TD CLASS="rdoc" ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="section4" ><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'i:CallConv')" ALT="show/hide" > Instances</TD ></TR ><TR ><TD CLASS="body" ><DIV ID="i:CallConv" STYLE="display:block;" ><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0" ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Control-Monad.html#t%3AFunctor" >Functor</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ACallConv" >CallConv</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Typeable.html#t%3ATypeable1" >Typeable1</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ACallConv" >CallConv</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotated" >Annotated</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ACallConv" >CallConv</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-ExactPrint.html#t%3AExactP" >ExactP</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ACallConv" >CallConv</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ACallConv" >CallConv</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Data.html#t%3AData" >Data</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Data.html#t%3AData" >Data</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ACallConv" >CallConv</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ACallConv" >CallConv</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Text-Show.html#t%3AShow" >Show</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Text-Show.html#t%3AShow" >Show</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ACallConv" >CallConv</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Pretty.html#t%3APretty" >Pretty</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ACallConv" >CallConv</A > l)</TD ></TR ></TABLE ></DIV ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="section1" ><A NAME="14" ><A NAME="14" >Pragmas </A ></A ></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:ModulePragma" ><A NAME="t%3AModulePragma" ></A ></A ><B >ModulePragma</B > l </TD ><TD CLASS="declbut" ><A HREF="src/Language-Haskell-Exts-Annotated-Syntax.html#ModulePragma" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="ndoc" >A top level options pragma, preceding the module header. </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:LanguagePragma" ><A NAME="v%3ALanguagePragma" ></A ></A ><B >LanguagePragma</B > l [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AName" >Name</A > l]</TD ><TD CLASS="rdoc" >LANGUAGE pragma </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:OptionsPragma" ><A NAME="v%3AOptionsPragma" ></A ></A ><B >OptionsPragma</B > l (<A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Maybe.html#t%3AMaybe" >Maybe</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ATool" >Tool</A >) <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Char.html#t%3AString" >String</A ></TD ><TD CLASS="rdoc" >OPTIONS pragma, possibly qualified with a tool, e.g. OPTIONS_GHC </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:AnnModulePragma" ><A NAME="v%3AAnnModulePragma" ></A ></A ><B >AnnModulePragma</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotation" >Annotation</A > l)</TD ><TD CLASS="rdoc" >ANN pragma with module scope </TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="section4" ><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'i:ModulePragma')" ALT="show/hide" > Instances</TD ></TR ><TR ><TD CLASS="body" ><DIV ID="i:ModulePragma" STYLE="display:block;" ><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0" ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Control-Monad.html#t%3AFunctor" >Functor</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AModulePragma" >ModulePragma</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Typeable.html#t%3ATypeable1" >Typeable1</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AModulePragma" >ModulePragma</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotated" >Annotated</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AModulePragma" >ModulePragma</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-ExactPrint.html#t%3AExactP" >ExactP</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AModulePragma" >ModulePragma</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AModulePragma" >ModulePragma</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Data.html#t%3AData" >Data</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Data.html#t%3AData" >Data</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AModulePragma" >ModulePragma</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AModulePragma" >ModulePragma</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Text-Show.html#t%3AShow" >Show</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Text-Show.html#t%3AShow" >Show</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AModulePragma" >ModulePragma</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-SrcLoc.html#t%3ASrcInfo" >SrcInfo</A > loc => <A HREF="Language-Haskell-Exts-Pretty.html#t%3APretty" >Pretty</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AModulePragma" >ModulePragma</A > loc)</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:Tool" ><A NAME="t%3ATool" ></A ></A ><B >Tool</B > </TD ><TD CLASS="declbut" ><A HREF="src/Language-Haskell-Exts-Annotated-Syntax.html#Tool" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="ndoc" >Recognised tools for OPTIONS pragmas. </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:GHC" ><A NAME="v%3AGHC" ></A ></A ><B >GHC</B ></TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:HUGS" ><A NAME="v%3AHUGS" ></A ></A ><B >HUGS</B ></TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:NHC98" ><A NAME="v%3ANHC98" ></A ></A ><B >NHC98</B ></TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:YHC" ><A NAME="v%3AYHC" ></A ></A ><B >YHC</B ></TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:HADDOCK" ><A NAME="v%3AHADDOCK" ></A ></A ><B >HADDOCK</B ></TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:UnknownTool" ><A NAME="v%3AUnknownTool" ></A ></A ><B >UnknownTool</B > <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Char.html#t%3AString" >String</A ></TD ><TD CLASS="rdoc" ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="section4" ><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'i:Tool')" ALT="show/hide" > Instances</TD ></TR ><TR ><TD CLASS="body" ><DIV ID="i:Tool" STYLE="display:block;" ><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0" ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ATool" >Tool</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Data.html#t%3AData" >Data</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ATool" >Tool</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ATool" >Tool</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Text-Show.html#t%3AShow" >Show</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ATool" >Tool</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Typeable.html#t%3ATypeable" >Typeable</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ATool" >Tool</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Pretty.html#t%3APretty" >Pretty</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ATool" >Tool</A ></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:Rule" ><A NAME="t%3ARule" ></A ></A ><B >Rule</B > l </TD ><TD CLASS="declbut" ><A HREF="src/Language-Haskell-Exts-Annotated-Syntax.html#Rule" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="ndoc" >The body of a RULES pragma. </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:Rule" ><A NAME="v%3ARule" ></A ></A ><B >Rule</B > l <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Char.html#t%3AString" >String</A > (<A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Maybe.html#t%3AMaybe" >Maybe</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AActivation" >Activation</A > l)) (<A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Maybe.html#t%3AMaybe" >Maybe</A > [<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ARuleVar" >RuleVar</A > l]) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l)</TD ><TD CLASS="rdoc" ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="section4" ><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'i:Rule')" ALT="show/hide" > Instances</TD ></TR ><TR ><TD CLASS="body" ><DIV ID="i:Rule" STYLE="display:block;" ><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0" ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Control-Monad.html#t%3AFunctor" >Functor</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ARule" >Rule</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Typeable.html#t%3ATypeable1" >Typeable1</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ARule" >Rule</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotated" >Annotated</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ARule" >Rule</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-ExactPrint.html#t%3AExactP" >ExactP</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ARule" >Rule</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ARule" >Rule</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Data.html#t%3AData" >Data</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Data.html#t%3AData" >Data</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ARule" >Rule</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ARule" >Rule</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Text-Show.html#t%3AShow" >Show</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Text-Show.html#t%3AShow" >Show</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ARule" >Rule</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-SrcLoc.html#t%3ASrcInfo" >SrcInfo</A > loc => <A HREF="Language-Haskell-Exts-Pretty.html#t%3APretty" >Pretty</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ARule" >Rule</A > loc)</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:RuleVar" ><A NAME="t%3ARuleVar" ></A ></A ><B >RuleVar</B > l </TD ><TD CLASS="declbut" ><A HREF="src/Language-Haskell-Exts-Annotated-Syntax.html#RuleVar" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="ndoc" >Variables used in a RULES pragma, optionally annotated with types </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:RuleVar" ><A NAME="v%3ARuleVar" ></A ></A ><B >RuleVar</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AName" >Name</A > l)</TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:TypedRuleVar" ><A NAME="v%3ATypedRuleVar" ></A ></A ><B >TypedRuleVar</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AName" >Name</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AType" >Type</A > l)</TD ><TD CLASS="rdoc" ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="section4" ><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'i:RuleVar')" ALT="show/hide" > Instances</TD ></TR ><TR ><TD CLASS="body" ><DIV ID="i:RuleVar" STYLE="display:block;" ><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0" ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Control-Monad.html#t%3AFunctor" >Functor</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ARuleVar" >RuleVar</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Typeable.html#t%3ATypeable1" >Typeable1</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ARuleVar" >RuleVar</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotated" >Annotated</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ARuleVar" >RuleVar</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-ExactPrint.html#t%3AExactP" >ExactP</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ARuleVar" >RuleVar</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ARuleVar" >RuleVar</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Data.html#t%3AData" >Data</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Data.html#t%3AData" >Data</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ARuleVar" >RuleVar</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ARuleVar" >RuleVar</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Text-Show.html#t%3AShow" >Show</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Text-Show.html#t%3AShow" >Show</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ARuleVar" >RuleVar</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Pretty.html#t%3APretty" >Pretty</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ARuleVar" >RuleVar</A > l)</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:Activation" ><A NAME="t%3AActivation" ></A ></A ><B >Activation</B > l </TD ><TD CLASS="declbut" ><A HREF="src/Language-Haskell-Exts-Annotated-Syntax.html#Activation" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="ndoc" >Activation clause of a RULES pragma. </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:ActiveFrom" ><A NAME="v%3AActiveFrom" ></A ></A ><B >ActiveFrom</B > l <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Int.html#t%3AInt" >Int</A ></TD ><TD CLASS="rdoc" ></TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:ActiveUntil" ><A NAME="v%3AActiveUntil" ></A ></A ><B >ActiveUntil</B > l <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Int.html#t%3AInt" >Int</A ></TD ><TD CLASS="rdoc" ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="section4" ><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'i:Activation')" ALT="show/hide" > Instances</TD ></TR ><TR ><TD CLASS="body" ><DIV ID="i:Activation" STYLE="display:block;" ><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0" ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Control-Monad.html#t%3AFunctor" >Functor</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AActivation" >Activation</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Typeable.html#t%3ATypeable1" >Typeable1</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AActivation" >Activation</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotated" >Annotated</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AActivation" >Activation</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-ExactPrint.html#t%3AExactP" >ExactP</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AActivation" >Activation</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AActivation" >Activation</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Data.html#t%3AData" >Data</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Data.html#t%3AData" >Data</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AActivation" >Activation</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AActivation" >Activation</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Text-Show.html#t%3AShow" >Show</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Text-Show.html#t%3AShow" >Show</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AActivation" >Activation</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Pretty.html#t%3APretty" >Pretty</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AActivation" >Activation</A > l)</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:Annotation" ><A NAME="t%3AAnnotation" ></A ></A ><B >Annotation</B > l </TD ><TD CLASS="declbut" ><A HREF="src/Language-Haskell-Exts-Annotated-Syntax.html#Annotation" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="ndoc" >An annotation through an ANN pragma. </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:Ann" ><A NAME="v%3AAnn" ></A ></A ><B >Ann</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AName" >Name</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l)</TD ><TD CLASS="rdoc" >An annotation for a declared name. </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:TypeAnn" ><A NAME="v%3ATypeAnn" ></A ></A ><B >TypeAnn</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AName" >Name</A > l) (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l)</TD ><TD CLASS="rdoc" >An annotation for a declared type. </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:ModuleAnn" ><A NAME="v%3AModuleAnn" ></A ></A ><B >ModuleAnn</B > l (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l)</TD ><TD CLASS="rdoc" >An annotation for the defining module. </TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="section4" ><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'i:Annotation')" ALT="show/hide" > Instances</TD ></TR ><TR ><TD CLASS="body" ><DIV ID="i:Annotation" STYLE="display:block;" ><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0" ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Control-Monad.html#t%3AFunctor" >Functor</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotation" >Annotation</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Typeable.html#t%3ATypeable1" >Typeable1</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotation" >Annotation</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotated" >Annotated</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotation" >Annotation</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-ExactPrint.html#t%3AExactP" >ExactP</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotation" >Annotation</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Fixity.html#t%3AAppFixity" >AppFixity</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotation" >Annotation</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotation" >Annotation</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Data.html#t%3AData" >Data</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Data.html#t%3AData" >Data</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotation" >Annotation</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Ord.html#t%3AOrd" >Ord</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotation" >Annotation</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Text-Show.html#t%3AShow" >Show</A > l => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Text-Show.html#t%3AShow" >Show</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotation" >Annotation</A > l)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-SrcLoc.html#t%3ASrcInfo" >SrcInfo</A > loc => <A HREF="Language-Haskell-Exts-Pretty.html#t%3APretty" >Pretty</A > (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotation" >Annotation</A > loc)</TD ></TR ></TABLE ></DIV ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="section1" ><A NAME="15" ><A NAME="15" >Builtin names </A ></A ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="section2" ><A NAME="16" ><A NAME="16" >Modules </A ></A ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><A NAME="v:prelude_mod" ><A NAME="v%3Aprelude_mod" ></A ></A ><B >prelude_mod</B > :: l -> <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AModuleName" >ModuleName</A > l</TD ><TD CLASS="declbut" ><A HREF="src/Language-Haskell-Exts-Annotated-Syntax.html#prelude_mod" >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:main_mod" ><A NAME="v%3Amain_mod" ></A ></A ><B >main_mod</B > :: l -> <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AModuleName" >ModuleName</A > l</TD ><TD CLASS="declbut" ><A HREF="src/Language-Haskell-Exts-Annotated-Syntax.html#main_mod" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="section2" ><A NAME="17" ><A NAME="17" >Main function of a program </A ></A ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><A NAME="v:main_name" ><A NAME="v%3Amain_name" ></A ></A ><B >main_name</B > :: l -> <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AName" >Name</A > l</TD ><TD CLASS="declbut" ><A HREF="src/Language-Haskell-Exts-Annotated-Syntax.html#main_name" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="section2" ><A NAME="18" ><A NAME="18" >Constructors </A ></A ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><A NAME="v:unit_con_name" ><A NAME="v%3Aunit_con_name" ></A ></A ><B >unit_con_name</B > :: l -> <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AQName" >QName</A > l</TD ><TD CLASS="declbut" ><A HREF="src/Language-Haskell-Exts-Annotated-Syntax.html#unit_con_name" >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:tuple_con_name" ><A NAME="v%3Atuple_con_name" ></A ></A ><B >tuple_con_name</B > :: l -> <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ABoxed" >Boxed</A > -> <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Int.html#t%3AInt" >Int</A > -> <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AQName" >QName</A > l</TD ><TD CLASS="declbut" ><A HREF="src/Language-Haskell-Exts-Annotated-Syntax.html#tuple_con_name" >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:list_cons_name" ><A NAME="v%3Alist_cons_name" ></A ></A ><B >list_cons_name</B > :: l -> <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AQName" >QName</A > l</TD ><TD CLASS="declbut" ><A HREF="src/Language-Haskell-Exts-Annotated-Syntax.html#list_cons_name" >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:unboxed_singleton_con_name" ><A NAME="v%3Aunboxed_singleton_con_name" ></A ></A ><B >unboxed_singleton_con_name</B > :: l -> <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AQName" >QName</A > l</TD ><TD CLASS="declbut" ><A HREF="src/Language-Haskell-Exts-Annotated-Syntax.html#unboxed_singleton_con_name" >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:unit_con" ><A NAME="v%3Aunit_con" ></A ></A ><B >unit_con</B > :: l -> <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l</TD ><TD CLASS="declbut" ><A HREF="src/Language-Haskell-Exts-Annotated-Syntax.html#unit_con" >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:tuple_con" ><A NAME="v%3Atuple_con" ></A ></A ><B >tuple_con</B > :: l -> <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ABoxed" >Boxed</A > -> <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Int.html#t%3AInt" >Int</A > -> <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l</TD ><TD CLASS="declbut" ><A HREF="src/Language-Haskell-Exts-Annotated-Syntax.html#tuple_con" >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:unboxed_singleton_con" ><A NAME="v%3Aunboxed_singleton_con" ></A ></A ><B >unboxed_singleton_con</B > :: l -> <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A > l</TD ><TD CLASS="declbut" ><A HREF="src/Language-Haskell-Exts-Annotated-Syntax.html#unboxed_singleton_con" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="section2" ><A NAME="19" ><A NAME="19" >Special identifiers </A ></A ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><A NAME="v:as_name" ><A NAME="v%3Aas_name" ></A ></A ><B >as_name</B > :: l -> <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AName" >Name</A > l</TD ><TD CLASS="declbut" ><A HREF="src/Language-Haskell-Exts-Annotated-Syntax.html#as_name" >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:qualified_name" ><A NAME="v%3Aqualified_name" ></A ></A ><B >qualified_name</B > :: l -> <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AName" >Name</A > l</TD ><TD CLASS="declbut" ><A HREF="src/Language-Haskell-Exts-Annotated-Syntax.html#qualified_name" >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:hiding_name" ><A NAME="v%3Ahiding_name" ></A ></A ><B >hiding_name</B > :: l -> <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AName" >Name</A > l</TD ><TD CLASS="declbut" ><A HREF="src/Language-Haskell-Exts-Annotated-Syntax.html#hiding_name" >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:minus_name" ><A NAME="v%3Aminus_name" ></A ></A ><B >minus_name</B > :: l -> <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AName" >Name</A > l</TD ><TD CLASS="declbut" ><A HREF="src/Language-Haskell-Exts-Annotated-Syntax.html#minus_name" >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:bang_name" ><A NAME="v%3Abang_name" ></A ></A ><B >bang_name</B > :: l -> <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AName" >Name</A > l</TD ><TD CLASS="declbut" ><A HREF="src/Language-Haskell-Exts-Annotated-Syntax.html#bang_name" >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:dot_name" ><A NAME="v%3Adot_name" ></A ></A ><B >dot_name</B > :: l -> <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AName" >Name</A > l</TD ><TD CLASS="declbut" ><A HREF="src/Language-Haskell-Exts-Annotated-Syntax.html#dot_name" >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:star_name" ><A NAME="v%3Astar_name" ></A ></A ><B >star_name</B > :: l -> <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AName" >Name</A > l</TD ><TD CLASS="declbut" ><A HREF="src/Language-Haskell-Exts-Annotated-Syntax.html#star_name" >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:export_name" ><A NAME="v%3Aexport_name" ></A ></A ><B >export_name</B > :: l -> <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AName" >Name</A > l</TD ><TD CLASS="declbut" ><A HREF="src/Language-Haskell-Exts-Annotated-Syntax.html#export_name" >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:safe_name" ><A NAME="v%3Asafe_name" ></A ></A ><B >safe_name</B > :: l -> <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AName" >Name</A > l</TD ><TD CLASS="declbut" ><A HREF="src/Language-Haskell-Exts-Annotated-Syntax.html#safe_name" >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:unsafe_name" ><A NAME="v%3Aunsafe_name" ></A ></A ><B >unsafe_name</B > :: l -> <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AName" >Name</A > l</TD ><TD CLASS="declbut" ><A HREF="src/Language-Haskell-Exts-Annotated-Syntax.html#unsafe_name" >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:threadsafe_name" ><A NAME="v%3Athreadsafe_name" ></A ></A ><B >threadsafe_name</B > :: l -> <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AName" >Name</A > l</TD ><TD CLASS="declbut" ><A HREF="src/Language-Haskell-Exts-Annotated-Syntax.html#threadsafe_name" >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:stdcall_name" ><A NAME="v%3Astdcall_name" ></A ></A ><B >stdcall_name</B > :: l -> <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AName" >Name</A > l</TD ><TD CLASS="declbut" ><A HREF="src/Language-Haskell-Exts-Annotated-Syntax.html#stdcall_name" >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:ccall_name" ><A NAME="v%3Accall_name" ></A ></A ><B >ccall_name</B > :: l -> <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AName" >Name</A > l</TD ><TD CLASS="declbut" ><A HREF="src/Language-Haskell-Exts-Annotated-Syntax.html#ccall_name" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="section2" ><A NAME="20" ><A NAME="20" >Type constructors </A ></A ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><A NAME="v:unit_tycon_name" ><A NAME="v%3Aunit_tycon_name" ></A ></A ><B >unit_tycon_name</B > :: l -> <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AQName" >QName</A > l</TD ><TD CLASS="declbut" ><A HREF="src/Language-Haskell-Exts-Annotated-Syntax.html#unit_tycon_name" >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:fun_tycon_name" ><A NAME="v%3Afun_tycon_name" ></A ></A ><B >fun_tycon_name</B > :: l -> <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AQName" >QName</A > l</TD ><TD CLASS="declbut" ><A HREF="src/Language-Haskell-Exts-Annotated-Syntax.html#fun_tycon_name" >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:list_tycon_name" ><A NAME="v%3Alist_tycon_name" ></A ></A ><B >list_tycon_name</B > :: l -> <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AQName" >QName</A > l</TD ><TD CLASS="declbut" ><A HREF="src/Language-Haskell-Exts-Annotated-Syntax.html#list_tycon_name" >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:tuple_tycon_name" ><A NAME="v%3Atuple_tycon_name" ></A ></A ><B >tuple_tycon_name</B > :: l -> <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ABoxed" >Boxed</A > -> <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Int.html#t%3AInt" >Int</A > -> <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AQName" >QName</A > l</TD ><TD CLASS="declbut" ><A HREF="src/Language-Haskell-Exts-Annotated-Syntax.html#tuple_tycon_name" >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:unboxed_singleton_tycon_name" ><A NAME="v%3Aunboxed_singleton_tycon_name" ></A ></A ><B >unboxed_singleton_tycon_name</B > :: l -> <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AQName" >QName</A > l</TD ><TD CLASS="declbut" ><A HREF="src/Language-Haskell-Exts-Annotated-Syntax.html#unboxed_singleton_tycon_name" >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:unit_tycon" ><A NAME="v%3Aunit_tycon" ></A ></A ><B >unit_tycon</B > :: l -> <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AType" >Type</A > l</TD ><TD CLASS="declbut" ><A HREF="src/Language-Haskell-Exts-Annotated-Syntax.html#unit_tycon" >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:fun_tycon" ><A NAME="v%3Afun_tycon" ></A ></A ><B >fun_tycon</B > :: l -> <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AType" >Type</A > l</TD ><TD CLASS="declbut" ><A HREF="src/Language-Haskell-Exts-Annotated-Syntax.html#fun_tycon" >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:list_tycon" ><A NAME="v%3Alist_tycon" ></A ></A ><B >list_tycon</B > :: l -> <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AType" >Type</A > l</TD ><TD CLASS="declbut" ><A HREF="src/Language-Haskell-Exts-Annotated-Syntax.html#list_tycon" >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:tuple_tycon" ><A NAME="v%3Atuple_tycon" ></A ></A ><B >tuple_tycon</B > :: l -> <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ABoxed" >Boxed</A > -> <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Int.html#t%3AInt" >Int</A > -> <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AType" >Type</A > l</TD ><TD CLASS="declbut" ><A HREF="src/Language-Haskell-Exts-Annotated-Syntax.html#tuple_tycon" >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:unboxed_singleton_tycon" ><A NAME="v%3Aunboxed_singleton_tycon" ></A ></A ><B >unboxed_singleton_tycon</B > :: l -> <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AType" >Type</A > l</TD ><TD CLASS="declbut" ><A HREF="src/Language-Haskell-Exts-Annotated-Syntax.html#unboxed_singleton_tycon" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="section1" ><A NAME="21" ><A NAME="21" >Source coordinates </A ></A ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="section1" ><A NAME="22" ><A NAME="22" >Annotated trees </A ></A ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><SPAN CLASS="keyword" >class</SPAN > <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Control-Monad.html#t%3AFunctor" >Functor</A > ast => <A NAME="t:Annotated" ><A NAME="t%3AAnnotated" ></A ></A ><B >Annotated</B > ast <SPAN CLASS="keyword" >where</SPAN ></TD ><TD CLASS="declbut" ><A HREF="src/Language-Haskell-Exts-Annotated-Syntax.html#Annotated" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="ndoc" >AST nodes are annotated, and this class allows manipulation of the annotations. </TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="section4" >Methods</TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><A NAME="v:ann" ><A NAME="v%3Aann" ></A ></A ><B >ann</B > :: ast l -> l</TD ><TD CLASS="declbut" ><A HREF="src/Language-Haskell-Exts-Annotated-Syntax.html#ann" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="doc" >Retrieve the annotation of an AST node. </TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><A NAME="v:amap" ><A NAME="v%3Aamap" ></A ></A ><B >amap</B > :: (l -> l) -> ast l -> ast l</TD ><TD CLASS="declbut" ><A HREF="src/Language-Haskell-Exts-Annotated-Syntax.html#amap" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="doc" >Change the annotation of an AST node. Note that only the annotation of the node itself is affected, and not the annotations of any child nodes. if all nodes in the AST tree are to be affected, use <TT ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Control-Monad.html#v%3Afmap" >fmap</A ></TT >. </TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="section4" ><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'i:Annotated')" ALT="show/hide" > Instances</TD ></TR ><TR ><TD CLASS="body" ><DIV ID="i:Annotated" STYLE="display:block;" ><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0" ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotated" >Annotated</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AGuardedAlt" >GuardedAlt</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotated" >Annotated</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AGuardedAlts" >GuardedAlts</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotated" >Annotated</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAlt" >Alt</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotated" >Annotated</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AFieldUpdate" >FieldUpdate</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotated" >Annotated</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AQualStmt" >QualStmt</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotated" >Annotated</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AStmt" >Stmt</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotated" >Annotated</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3APatField" >PatField</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotated" >Annotated</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ARPat" >RPat</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotated" >Annotated</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ARPatOp" >RPatOp</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotated" >Annotated</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3APXAttr" >PXAttr</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotated" >Annotated</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3APat" >Pat</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotated" >Annotated</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AWarningText" >WarningText</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotated" >Annotated</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ARuleVar" >RuleVar</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotated" >Annotated</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ARule" >Rule</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotated" >Annotated</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AActivation" >Activation</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotated" >Annotated</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AModulePragma" >ModulePragma</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotated" >Annotated</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ACallConv" >CallConv</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotated" >Annotated</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ASafety" >Safety</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotated" >Annotated</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ASplice" >Splice</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotated" >Annotated</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ABracket" >Bracket</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotated" >Annotated</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AXAttr" >XAttr</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotated" >Annotated</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AXName" >XName</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotated" >Annotated</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExp" >Exp</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotated" >Annotated</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ALiteral" >Literal</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotated" >Annotated</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAsst" >Asst</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotated" >Annotated</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AContext" >Context</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotated" >Annotated</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AFunDep" >FunDep</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotated" >Annotated</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AKind" >Kind</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotated" >Annotated</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ATyVarBind" >TyVarBind</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotated" >Annotated</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AType" >Type</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotated" >Annotated</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AGuardedRhs" >GuardedRhs</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotated" >Annotated</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ARhs" >Rhs</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotated" >Annotated</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ABangType" >BangType</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotated" >Annotated</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AInstDecl" >InstDecl</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotated" >Annotated</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AClassDecl" >ClassDecl</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotated" >Annotated</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AGadtDecl" >GadtDecl</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotated" >Annotated</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AFieldDecl" >FieldDecl</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotated" >Annotated</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AConDecl" >ConDecl</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotated" >Annotated</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AQualConDecl" >QualConDecl</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotated" >Annotated</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AMatch" >Match</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotated" >Annotated</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AIPBind" >IPBind</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotated" >Annotated</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ABinds" >Binds</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotated" >Annotated</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ADeriving" >Deriving</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotated" >Annotated</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AInstHead" >InstHead</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotated" >Annotated</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ADeclHead" >DeclHead</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotated" >Annotated</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ADataOrNew" >DataOrNew</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotated" >Annotated</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotation" >Annotation</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotated" >Annotated</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ADecl" >Decl</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotated" >Annotated</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAssoc" >Assoc</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotated" >Annotated</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AImportSpec" >ImportSpec</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotated" >Annotated</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AImportSpecList" >ImportSpecList</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotated" >Annotated</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AImportDecl" >ImportDecl</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotated" >Annotated</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExportSpec" >ExportSpec</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotated" >Annotated</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AExportSpecList" >ExportSpecList</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotated" >Annotated</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AModuleHead" >ModuleHead</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotated" >Annotated</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AModule" >Module</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotated" >Annotated</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ACName" >CName</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotated" >Annotated</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AOp" >Op</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotated" >Annotated</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AQOp" >QOp</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotated" >Annotated</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AIPName" >IPName</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotated" >Annotated</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AName" >Name</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotated" >Annotated</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AQName" >QName</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotated" >Annotated</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3ASpecialCon" >SpecialCon</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotated" >Annotated</A > <A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AModuleName" >ModuleName</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotated" >Annotated</A > PAsst</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotated" >Annotated</A > PType</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotated" >Annotated</A > PContext</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotated" >Annotated</A > ParseXAttr</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotated" >Annotated</A > PFieldUpdate</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotated" >Annotated</A > PExp</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:=~=" ><A NAME="v%3A%3D~%3D" ></A ></A ><B >(=~=)</B > :: (<A HREF="Language-Haskell-Exts-Annotated-Syntax.html#t%3AAnnotated" >Annotated</A > a, <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Eq.html#t%3AEq" >Eq</A > (a <A HREF="/usr/share/doc/ghc/html/libraries/ghc-prim-0.2.0.0/GHC-Unit.html#t%3A%28%29" >()</A >)) => a l1 -> a l2 -> <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Bool.html#t%3ABool" >Bool</A ></TD ><TD CLASS="declbut" ><A HREF="src/Language-Haskell-Exts-Annotated-Syntax.html#%3D~%3D" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="doc" >Test if two AST elements are equal modulo annotations. </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 >