<!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.Parser</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-Parser.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-Parser.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.Parser</FONT ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="section4" ><B >Contents</B ></TD ></TR ><TR ><TD ><DL ><DT ><A HREF="#1" >General parsing </A ></DT ><DT ><A HREF="#2" >Parsing of specific AST elements </A ></DT ><DD ><DL ><DT ><A HREF="#3" >Modules </A ></DT ><DT ><A HREF="#4" >Expressions </A ></DT ><DT ><A HREF="#5" >Statements </A ></DT ><DT ><A HREF="#6" >Patterns </A ></DT ><DT ><A HREF="#7" >Declarations </A ></DT ><DT ><A HREF="#8" >Types </A ></DT ><DT ><A HREF="#9" >Option pragmas </A ></DT ></DL ></DD ></DL ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="section1" >Synopsis</TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >class</SPAN > <A HREF="#t%3AParseable" >Parseable</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%3Aparse" >parse</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-Parser.html#t%3AParseResult" >ParseResult</A > ast</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AparseWithMode" >parseWithMode</A > :: <A HREF="Language-Haskell-Exts-Parser.html#t%3AParseMode" >ParseMode</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-Parser.html#t%3AParseResult" >ParseResult</A > ast</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AparseWithComments" >parseWithComments</A > :: <A HREF="Language-Haskell-Exts-Parser.html#t%3AParseMode" >ParseMode</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-Parser.html#t%3AParseResult" >ParseResult</A > (ast, [<A HREF="Language-Haskell-Exts-Comments.html#t%3AComment" >Comment</A >])</TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><SPAN CLASS="keyword" >data</SPAN > <A HREF="#t%3AParseMode" >ParseMode</A > = <A HREF="#v%3AParseMode" >ParseMode</A > {<TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="recfield" ><A HREF="#v%3AparseFilename" >parseFilename</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%3Aextensions" >extensions</A > :: [<A HREF="Language-Haskell-Exts-Extension.html#t%3AExtension" >Extension</A >]</TD ></TR ><TR ><TD CLASS="recfield" ><A HREF="#v%3AignoreLanguagePragmas" >ignoreLanguagePragmas</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%3AignoreLinePragmas" >ignoreLinePragmas</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%3Afixities" >fixities</A > :: [<A HREF="Language-Haskell-Exts-Fixity.html#t%3AFixity" >Fixity</A >]</TD ></TR ></TABLE >}</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AdefaultParseMode" >defaultParseMode</A > :: <A HREF="Language-Haskell-Exts-Parser.html#t%3AParseMode" >ParseMode</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%3AParseResult" >ParseResult</A > a </TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="decl" >= <A HREF="#v%3AParseOk" >ParseOk</A > a</TD ></TR ><TR ><TD CLASS="decl" >| <A HREF="#v%3AParseFailed" >ParseFailed</A > <A HREF="Language-Haskell-Exts-SrcLoc.html#t%3ASrcLoc" >SrcLoc</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" ><A HREF="#v%3AfromParseResult" >fromParseResult</A > :: <A HREF="Language-Haskell-Exts-Parser.html#t%3AParseResult" >ParseResult</A > a -> a</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AparseModule" >parseModule</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-Parser.html#t%3AParseResult" >ParseResult</A > <A HREF="Language-Haskell-Exts-Syntax.html#t%3AModule" >Module</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AparseModuleWithMode" >parseModuleWithMode</A > :: <A HREF="Language-Haskell-Exts-Parser.html#t%3AParseMode" >ParseMode</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-Parser.html#t%3AParseResult" >ParseResult</A > <A HREF="Language-Haskell-Exts-Syntax.html#t%3AModule" >Module</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AparseModuleWithComments" >parseModuleWithComments</A > :: <A HREF="Language-Haskell-Exts-Parser.html#t%3AParseMode" >ParseMode</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-Parser.html#t%3AParseResult" >ParseResult</A > (<A HREF="Language-Haskell-Exts-Syntax.html#t%3AModule" >Module</A >, [<A HREF="Language-Haskell-Exts-Comments.html#t%3AComment" >Comment</A >])</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AparseExp" >parseExp</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-Parser.html#t%3AParseResult" >ParseResult</A > <A HREF="Language-Haskell-Exts-Syntax.html#t%3AExp" >Exp</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AparseExpWithMode" >parseExpWithMode</A > :: <A HREF="Language-Haskell-Exts-Parser.html#t%3AParseMode" >ParseMode</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-Parser.html#t%3AParseResult" >ParseResult</A > <A HREF="Language-Haskell-Exts-Syntax.html#t%3AExp" >Exp</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AparseExpWithComments" >parseExpWithComments</A > :: <A HREF="Language-Haskell-Exts-Parser.html#t%3AParseMode" >ParseMode</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-Parser.html#t%3AParseResult" >ParseResult</A > (<A HREF="Language-Haskell-Exts-Syntax.html#t%3AExp" >Exp</A >, [<A HREF="Language-Haskell-Exts-Comments.html#t%3AComment" >Comment</A >])</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AparseStmt" >parseStmt</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-Parser.html#t%3AParseResult" >ParseResult</A > <A HREF="Language-Haskell-Exts-Syntax.html#t%3AStmt" >Stmt</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AparseStmtWithMode" >parseStmtWithMode</A > :: <A HREF="Language-Haskell-Exts-Parser.html#t%3AParseMode" >ParseMode</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-Parser.html#t%3AParseResult" >ParseResult</A > <A HREF="Language-Haskell-Exts-Syntax.html#t%3AStmt" >Stmt</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AparseStmtWithComments" >parseStmtWithComments</A > :: <A HREF="Language-Haskell-Exts-Parser.html#t%3AParseMode" >ParseMode</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-Parser.html#t%3AParseResult" >ParseResult</A > (<A HREF="Language-Haskell-Exts-Syntax.html#t%3AStmt" >Stmt</A >, [<A HREF="Language-Haskell-Exts-Comments.html#t%3AComment" >Comment</A >])</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AparsePat" >parsePat</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-Parser.html#t%3AParseResult" >ParseResult</A > <A HREF="Language-Haskell-Exts-Syntax.html#t%3APat" >Pat</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AparsePatWithMode" >parsePatWithMode</A > :: <A HREF="Language-Haskell-Exts-Parser.html#t%3AParseMode" >ParseMode</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-Parser.html#t%3AParseResult" >ParseResult</A > <A HREF="Language-Haskell-Exts-Syntax.html#t%3APat" >Pat</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AparsePatWithComments" >parsePatWithComments</A > :: <A HREF="Language-Haskell-Exts-Parser.html#t%3AParseMode" >ParseMode</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-Parser.html#t%3AParseResult" >ParseResult</A > (<A HREF="Language-Haskell-Exts-Syntax.html#t%3APat" >Pat</A >, [<A HREF="Language-Haskell-Exts-Comments.html#t%3AComment" >Comment</A >])</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AparseDecl" >parseDecl</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-Parser.html#t%3AParseResult" >ParseResult</A > <A HREF="Language-Haskell-Exts-Syntax.html#t%3ADecl" >Decl</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AparseDeclWithMode" >parseDeclWithMode</A > :: <A HREF="Language-Haskell-Exts-Parser.html#t%3AParseMode" >ParseMode</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-Parser.html#t%3AParseResult" >ParseResult</A > <A HREF="Language-Haskell-Exts-Syntax.html#t%3ADecl" >Decl</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AparseDeclWithComments" >parseDeclWithComments</A > :: <A HREF="Language-Haskell-Exts-Parser.html#t%3AParseMode" >ParseMode</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-Parser.html#t%3AParseResult" >ParseResult</A > (<A HREF="Language-Haskell-Exts-Syntax.html#t%3ADecl" >Decl</A >, [<A HREF="Language-Haskell-Exts-Comments.html#t%3AComment" >Comment</A >])</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AparseType" >parseType</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-Parser.html#t%3AParseResult" >ParseResult</A > <A HREF="Language-Haskell-Exts-Syntax.html#t%3AType" >Type</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AparseTypeWithMode" >parseTypeWithMode</A > :: <A HREF="Language-Haskell-Exts-Parser.html#t%3AParseMode" >ParseMode</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-Parser.html#t%3AParseResult" >ParseResult</A > <A HREF="Language-Haskell-Exts-Syntax.html#t%3AType" >Type</A ></TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AparseTypeWithComments" >parseTypeWithComments</A > :: <A HREF="Language-Haskell-Exts-Parser.html#t%3AParseMode" >ParseMode</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-Parser.html#t%3AParseResult" >ParseResult</A > (<A HREF="Language-Haskell-Exts-Syntax.html#t%3AType" >Type</A >, [<A HREF="Language-Haskell-Exts-Comments.html#t%3AComment" >Comment</A >])</TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="#v%3AgetTopPragmas" >getTopPragmas</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-Parser.html#t%3AParseResult" >ParseResult</A > [<A HREF="Language-Haskell-Exts-Syntax.html#t%3AModulePragma" >ModulePragma</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" >General parsing </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 NAME="t:Parseable" ><A NAME="t%3AParseable" ></A ></A ><B >Parseable</B > ast <SPAN CLASS="keyword" >where</SPAN ></TD ><TD CLASS="declbut" ><A HREF="src/Language-Haskell-Exts-Parser.html#Parseable" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="ndoc" >Class to reuse the parse function at many different types. </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:parse" ><A NAME="v%3Aparse" ></A ></A ><B >parse</B > :: <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-Parser.html#t%3AParseResult" >ParseResult</A > ast</TD ><TD CLASS="declbut" ><A HREF="src/Language-Haskell-Exts-Parser.html#parse" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="doc" >Parse a string with default mode. </TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><A NAME="v:parseWithMode" ><A NAME="v%3AparseWithMode" ></A ></A ><B >parseWithMode</B > :: <A HREF="Language-Haskell-Exts-Parser.html#t%3AParseMode" >ParseMode</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-Parser.html#t%3AParseResult" >ParseResult</A > ast</TD ><TD CLASS="declbut" ><A HREF="src/Language-Haskell-Exts-Parser.html#parseWithMode" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="doc" >Parse a string with an explicit mode. </TD ></TR ><TR ><TD CLASS="s8" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><A NAME="v:parseWithComments" ><A NAME="v%3AparseWithComments" ></A ></A ><B >parseWithComments</B > :: <A HREF="Language-Haskell-Exts-Parser.html#t%3AParseMode" >ParseMode</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-Parser.html#t%3AParseResult" >ParseResult</A > (ast, [<A HREF="Language-Haskell-Exts-Comments.html#t%3AComment" >Comment</A >])</TD ><TD CLASS="declbut" ><A HREF="src/Language-Haskell-Exts-Parser.html#parseWithComments" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="doc" >Parse a string with an explicit mode, returning all comments along the AST </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:Parseable')" ALT="show/hide" > Instances</TD ></TR ><TR ><TD CLASS="body" ><DIV ID="i:Parseable" STYLE="display:block;" ><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0" ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Parser.html#t%3AParseable" >Parseable</A > <A HREF="Language-Haskell-Exts-Syntax.html#t%3APat" >Pat</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Parser.html#t%3AParseable" >Parseable</A > <A HREF="Language-Haskell-Exts-Syntax.html#t%3AExp" >Exp</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Parser.html#t%3AParseable" >Parseable</A > <A HREF="Language-Haskell-Exts-Syntax.html#t%3AType" >Type</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Parser.html#t%3AParseable" >Parseable</A > <A HREF="Language-Haskell-Exts-Syntax.html#t%3ADecl" >Decl</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="Language-Haskell-Exts-Parser.html#t%3AParseable" >Parseable</A > <A HREF="Language-Haskell-Exts-Syntax.html#t%3AModule" >Module</A ></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 ><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 ><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 ><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 ><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 ><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:ParseMode" ><A NAME="t%3AParseMode" ></A ></A ><B >ParseMode</B > </TD ><TD CLASS="declbut" ><A HREF="src/Language-Haskell-Exts-ParseMonad.html#ParseMode" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="ndoc" >Static parameters governing a parse. Note that the various parse functions in <A HREF="Language-Haskell-Exts-Parser.html" >Language.Haskell.Exts.Parser</A > never look at LANGUAGE pragmas, regardless of what the <TT >ignoreLanguagePragmas</TT > flag is set to. Only the various <TT >parseFile</TT > functions in <A HREF="Language-Haskell-Exts.html" >Language.Haskell.Exts</A > will act on it, when set to <TT ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Bool.html#v%3AFalse" >False</A ></TT >. </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:ParseMode" ><A NAME="v%3AParseMode" ></A ></A ><B >ParseMode</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:parseFilename" ><A NAME="v%3AparseFilename" ></A ></A ><B >parseFilename</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" >original name of the file being parsed </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:extensions" ><A NAME="v%3Aextensions" ></A ></A ><B >extensions</B > :: [<A HREF="Language-Haskell-Exts-Extension.html#t%3AExtension" >Extension</A >]</TD ><TD CLASS="rdoc" >list of extensions enabled for parsing </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:ignoreLanguagePragmas" ><A NAME="v%3AignoreLanguagePragmas" ></A ></A ><B >ignoreLanguagePragmas</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" >if <TT ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Bool.html#v%3ATrue" >True</A ></TT >, the parser won't care about further extensions in LANGUAGE pragmas in source files </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:ignoreLinePragmas" ><A NAME="v%3AignoreLinePragmas" ></A ></A ><B >ignoreLinePragmas</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" >if <TT ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Bool.html#v%3ATrue" >True</A ></TT >, the parser won't read line position information from LINE pragmas in source files </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:fixities" ><A NAME="v%3Afixities" ></A ></A ><B >fixities</B > :: [<A HREF="Language-Haskell-Exts-Fixity.html#t%3AFixity" >Fixity</A >]</TD ><TD CLASS="rdoc" >list of fixities to be aware of </TD ></TR ></TABLE ></TD ></TR ></TABLE ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><A NAME="v:defaultParseMode" ><A NAME="v%3AdefaultParseMode" ></A ></A ><B >defaultParseMode</B > :: <A HREF="Language-Haskell-Exts-Parser.html#t%3AParseMode" >ParseMode</A ></TD ><TD CLASS="declbut" ><A HREF="src/Language-Haskell-Exts-ParseMonad.html#defaultParseMode" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="doc" >Default parameters for a parse. The default is an unknown filename, no extensions (i.e. Haskell 98), don't ignore LANGUAGE pragmas, do ignore LINE pragmas, and be aware of fixities from the Prelude. </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:ParseResult" ><A NAME="t%3AParseResult" ></A ></A ><B >ParseResult</B > a </TD ><TD CLASS="declbut" ><A HREF="src/Language-Haskell-Exts-ParseMonad.html#ParseResult" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="body" ><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0" ><TR ><TD CLASS="ndoc" >The result of a parse. </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:ParseOk" ><A NAME="v%3AParseOk" ></A ></A ><B >ParseOk</B > a</TD ><TD CLASS="rdoc" >The parse succeeded, yielding a value. </TD ></TR ><TR ><TD CLASS="arg" ><A NAME="v:ParseFailed" ><A NAME="v%3AParseFailed" ></A ></A ><B >ParseFailed</B > <A HREF="Language-Haskell-Exts-SrcLoc.html#t%3ASrcLoc" >SrcLoc</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" >The parse failed at the specified source location, with an error message. </TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="section4" ><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'i:ParseResult')" ALT="show/hide" > Instances</TD ></TR ><TR ><TD CLASS="body" ><DIV ID="i:ParseResult" 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%3AMonad" >Monad</A > <A HREF="Language-Haskell-Exts-Parser.html#t%3AParseResult" >ParseResult</A ></TD ></TR ><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-Parser.html#t%3AParseResult" >ParseResult</A ></TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Control-Applicative.html#t%3AApplicative" >Applicative</A > <A HREF="Language-Haskell-Exts-Parser.html#t%3AParseResult" >ParseResult</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 => <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-Parser.html#t%3AParseResult" >ParseResult</A > a)</TD ></TR ><TR ><TD CLASS="decl" ><A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Monoid.html#t%3AMonoid" >Monoid</A > m => <A HREF="/usr/share/doc/ghc/html/libraries/base-4.2.0.2/Data-Monoid.html#t%3AMonoid" >Monoid</A > (<A HREF="Language-Haskell-Exts-Parser.html#t%3AParseResult" >ParseResult</A > m)</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:fromParseResult" ><A NAME="v%3AfromParseResult" ></A ></A ><B >fromParseResult</B > :: <A HREF="Language-Haskell-Exts-Parser.html#t%3AParseResult" >ParseResult</A > a -> a</TD ><TD CLASS="declbut" ><A HREF="src/Language-Haskell-Exts-ParseMonad.html#fromParseResult" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="doc" >Retrieve the result of a successful parse, throwing an error if the parse is actually not successful. </TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="section1" ><A NAME="2" ><A NAME="2" >Parsing of specific AST elements </A ></A ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="section2" ><A NAME="3" ><A NAME="3" >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:parseModule" ><A NAME="v%3AparseModule" ></A ></A ><B >parseModule</B > :: <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-Parser.html#t%3AParseResult" >ParseResult</A > <A HREF="Language-Haskell-Exts-Syntax.html#t%3AModule" >Module</A ></TD ><TD CLASS="declbut" ><A HREF="src/Language-Haskell-Exts-Parser.html#parseModule" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="doc" >Parse of a string, which should contain a complete Haskell module. </TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><A NAME="v:parseModuleWithMode" ><A NAME="v%3AparseModuleWithMode" ></A ></A ><B >parseModuleWithMode</B > :: <A HREF="Language-Haskell-Exts-Parser.html#t%3AParseMode" >ParseMode</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-Parser.html#t%3AParseResult" >ParseResult</A > <A HREF="Language-Haskell-Exts-Syntax.html#t%3AModule" >Module</A ></TD ><TD CLASS="declbut" ><A HREF="src/Language-Haskell-Exts-Parser.html#parseModuleWithMode" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="doc" >Parse of a string containing a complete Haskell module, using an explicit mode. </TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><A NAME="v:parseModuleWithComments" ><A NAME="v%3AparseModuleWithComments" ></A ></A ><B >parseModuleWithComments</B > :: <A HREF="Language-Haskell-Exts-Parser.html#t%3AParseMode" >ParseMode</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-Parser.html#t%3AParseResult" >ParseResult</A > (<A HREF="Language-Haskell-Exts-Syntax.html#t%3AModule" >Module</A >, [<A HREF="Language-Haskell-Exts-Comments.html#t%3AComment" >Comment</A >])</TD ><TD CLASS="declbut" ><A HREF="src/Language-Haskell-Exts-Parser.html#parseModuleWithComments" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="doc" >Parse of a string containing a complete Haskell module, using an explicit mode, retaining comments. </TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="section2" ><A NAME="4" ><A NAME="4" >Expressions </A ></A ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><A NAME="v:parseExp" ><A NAME="v%3AparseExp" ></A ></A ><B >parseExp</B > :: <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-Parser.html#t%3AParseResult" >ParseResult</A > <A HREF="Language-Haskell-Exts-Syntax.html#t%3AExp" >Exp</A ></TD ><TD CLASS="declbut" ><A HREF="src/Language-Haskell-Exts-Parser.html#parseExp" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="doc" >Parse of a string containing a Haskell expression. </TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><A NAME="v:parseExpWithMode" ><A NAME="v%3AparseExpWithMode" ></A ></A ><B >parseExpWithMode</B > :: <A HREF="Language-Haskell-Exts-Parser.html#t%3AParseMode" >ParseMode</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-Parser.html#t%3AParseResult" >ParseResult</A > <A HREF="Language-Haskell-Exts-Syntax.html#t%3AExp" >Exp</A ></TD ><TD CLASS="declbut" ><A HREF="src/Language-Haskell-Exts-Parser.html#parseExpWithMode" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="doc" >Parse of a string containing a Haskell expression, using an explicit mode. </TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><A NAME="v:parseExpWithComments" ><A NAME="v%3AparseExpWithComments" ></A ></A ><B >parseExpWithComments</B > :: <A HREF="Language-Haskell-Exts-Parser.html#t%3AParseMode" >ParseMode</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-Parser.html#t%3AParseResult" >ParseResult</A > (<A HREF="Language-Haskell-Exts-Syntax.html#t%3AExp" >Exp</A >, [<A HREF="Language-Haskell-Exts-Comments.html#t%3AComment" >Comment</A >])</TD ><TD CLASS="declbut" ><A HREF="src/Language-Haskell-Exts-Parser.html#parseExpWithComments" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="doc" >Parse of a string containing a complete Haskell module, using an explicit mode, retaining comments. </TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="section2" ><A NAME="5" ><A NAME="5" >Statements </A ></A ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><A NAME="v:parseStmt" ><A NAME="v%3AparseStmt" ></A ></A ><B >parseStmt</B > :: <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-Parser.html#t%3AParseResult" >ParseResult</A > <A HREF="Language-Haskell-Exts-Syntax.html#t%3AStmt" >Stmt</A ></TD ><TD CLASS="declbut" ><A HREF="src/Language-Haskell-Exts-Parser.html#parseStmt" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="doc" >Parse of a string containing a Haskell type. </TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><A NAME="v:parseStmtWithMode" ><A NAME="v%3AparseStmtWithMode" ></A ></A ><B >parseStmtWithMode</B > :: <A HREF="Language-Haskell-Exts-Parser.html#t%3AParseMode" >ParseMode</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-Parser.html#t%3AParseResult" >ParseResult</A > <A HREF="Language-Haskell-Exts-Syntax.html#t%3AStmt" >Stmt</A ></TD ><TD CLASS="declbut" ><A HREF="src/Language-Haskell-Exts-Parser.html#parseStmtWithMode" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="doc" >Parse of a string containing a Haskell type, using an explicit mode. </TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><A NAME="v:parseStmtWithComments" ><A NAME="v%3AparseStmtWithComments" ></A ></A ><B >parseStmtWithComments</B > :: <A HREF="Language-Haskell-Exts-Parser.html#t%3AParseMode" >ParseMode</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-Parser.html#t%3AParseResult" >ParseResult</A > (<A HREF="Language-Haskell-Exts-Syntax.html#t%3AStmt" >Stmt</A >, [<A HREF="Language-Haskell-Exts-Comments.html#t%3AComment" >Comment</A >])</TD ><TD CLASS="declbut" ><A HREF="src/Language-Haskell-Exts-Parser.html#parseStmtWithComments" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="doc" >Parse of a string containing a complete Haskell module, using an explicit mode, retaining comments. </TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="section2" ><A NAME="6" ><A NAME="6" >Patterns </A ></A ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><A NAME="v:parsePat" ><A NAME="v%3AparsePat" ></A ></A ><B >parsePat</B > :: <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-Parser.html#t%3AParseResult" >ParseResult</A > <A HREF="Language-Haskell-Exts-Syntax.html#t%3APat" >Pat</A ></TD ><TD CLASS="declbut" ><A HREF="src/Language-Haskell-Exts-Parser.html#parsePat" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="doc" >Parse of a string containing a Haskell pattern. </TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><A NAME="v:parsePatWithMode" ><A NAME="v%3AparsePatWithMode" ></A ></A ><B >parsePatWithMode</B > :: <A HREF="Language-Haskell-Exts-Parser.html#t%3AParseMode" >ParseMode</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-Parser.html#t%3AParseResult" >ParseResult</A > <A HREF="Language-Haskell-Exts-Syntax.html#t%3APat" >Pat</A ></TD ><TD CLASS="declbut" ><A HREF="src/Language-Haskell-Exts-Parser.html#parsePatWithMode" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="doc" >Parse of a string containing a Haskell pattern, using an explicit mode. </TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><A NAME="v:parsePatWithComments" ><A NAME="v%3AparsePatWithComments" ></A ></A ><B >parsePatWithComments</B > :: <A HREF="Language-Haskell-Exts-Parser.html#t%3AParseMode" >ParseMode</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-Parser.html#t%3AParseResult" >ParseResult</A > (<A HREF="Language-Haskell-Exts-Syntax.html#t%3APat" >Pat</A >, [<A HREF="Language-Haskell-Exts-Comments.html#t%3AComment" >Comment</A >])</TD ><TD CLASS="declbut" ><A HREF="src/Language-Haskell-Exts-Parser.html#parsePatWithComments" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="doc" >Parse of a string containing a complete Haskell module, using an explicit mode, retaining comments. </TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="section2" ><A NAME="7" ><A NAME="7" >Declarations </A ></A ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><A NAME="v:parseDecl" ><A NAME="v%3AparseDecl" ></A ></A ><B >parseDecl</B > :: <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-Parser.html#t%3AParseResult" >ParseResult</A > <A HREF="Language-Haskell-Exts-Syntax.html#t%3ADecl" >Decl</A ></TD ><TD CLASS="declbut" ><A HREF="src/Language-Haskell-Exts-Parser.html#parseDecl" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="doc" >Parse of a string containing a Haskell top-level declaration. </TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><A NAME="v:parseDeclWithMode" ><A NAME="v%3AparseDeclWithMode" ></A ></A ><B >parseDeclWithMode</B > :: <A HREF="Language-Haskell-Exts-Parser.html#t%3AParseMode" >ParseMode</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-Parser.html#t%3AParseResult" >ParseResult</A > <A HREF="Language-Haskell-Exts-Syntax.html#t%3ADecl" >Decl</A ></TD ><TD CLASS="declbut" ><A HREF="src/Language-Haskell-Exts-Parser.html#parseDeclWithMode" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="doc" >Parse of a string containing a Haskell top-level declaration, using an explicit mode. </TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><A NAME="v:parseDeclWithComments" ><A NAME="v%3AparseDeclWithComments" ></A ></A ><B >parseDeclWithComments</B > :: <A HREF="Language-Haskell-Exts-Parser.html#t%3AParseMode" >ParseMode</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-Parser.html#t%3AParseResult" >ParseResult</A > (<A HREF="Language-Haskell-Exts-Syntax.html#t%3ADecl" >Decl</A >, [<A HREF="Language-Haskell-Exts-Comments.html#t%3AComment" >Comment</A >])</TD ><TD CLASS="declbut" ><A HREF="src/Language-Haskell-Exts-Parser.html#parseDeclWithComments" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="doc" >Parse of a string containing a complete Haskell module, using an explicit mode, retaining comments. </TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="section2" ><A NAME="8" ><A NAME="8" >Types </A ></A ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><A NAME="v:parseType" ><A NAME="v%3AparseType" ></A ></A ><B >parseType</B > :: <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-Parser.html#t%3AParseResult" >ParseResult</A > <A HREF="Language-Haskell-Exts-Syntax.html#t%3AType" >Type</A ></TD ><TD CLASS="declbut" ><A HREF="src/Language-Haskell-Exts-Parser.html#parseType" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="doc" >Parse of a string containing a Haskell type. </TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><A NAME="v:parseTypeWithMode" ><A NAME="v%3AparseTypeWithMode" ></A ></A ><B >parseTypeWithMode</B > :: <A HREF="Language-Haskell-Exts-Parser.html#t%3AParseMode" >ParseMode</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-Parser.html#t%3AParseResult" >ParseResult</A > <A HREF="Language-Haskell-Exts-Syntax.html#t%3AType" >Type</A ></TD ><TD CLASS="declbut" ><A HREF="src/Language-Haskell-Exts-Parser.html#parseTypeWithMode" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="doc" >Parse of a string containing a Haskell type, using an explicit mode. </TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><A NAME="v:parseTypeWithComments" ><A NAME="v%3AparseTypeWithComments" ></A ></A ><B >parseTypeWithComments</B > :: <A HREF="Language-Haskell-Exts-Parser.html#t%3AParseMode" >ParseMode</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-Parser.html#t%3AParseResult" >ParseResult</A > (<A HREF="Language-Haskell-Exts-Syntax.html#t%3AType" >Type</A >, [<A HREF="Language-Haskell-Exts-Comments.html#t%3AComment" >Comment</A >])</TD ><TD CLASS="declbut" ><A HREF="src/Language-Haskell-Exts-Parser.html#parseTypeWithComments" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="doc" >Parse of a string containing a complete Haskell module, using an explicit mode, retaining comments. </TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="section2" ><A NAME="9" ><A NAME="9" >Option pragmas </A ></A ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="topdecl" ><TABLE CLASS="declbar" ><TR ><TD CLASS="declname" ><A NAME="v:getTopPragmas" ><A NAME="v%3AgetTopPragmas" ></A ></A ><B >getTopPragmas</B > :: <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-Parser.html#t%3AParseResult" >ParseResult</A > [<A HREF="Language-Haskell-Exts-Syntax.html#t%3AModulePragma" >ModulePragma</A >]</TD ><TD CLASS="declbut" ><A HREF="src/Language-Haskell-Exts-Parser.html#getTopPragmas" >Source</A ></TD ></TR ></TABLE ></TD ></TR ><TR ><TD CLASS="s15" ></TD ></TR ><TR ><TD CLASS="botbar" >Produced by <A HREF="http://www.haskell.org/haddock/" >Haddock</A > version 2.6.1</TD ></TR ></TABLE ></BODY ></HTML >