Sophie

Sophie

distrib > Mandriva > 2010.0 > i586 > media > contrib-release > by-pkgid > 1f2b142b9d2ef4849a6f5316fa1c5b12 > files > 1173

ghc-6.10.4-1mdv2010.0.i586.rpm

<!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
>Distribution.ParseUtils</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_Distribution-ParseUtils.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"
>Cabal-1.6.0.3: A framework for packaging Haskell software</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"
>Distribution.ParseUtils</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"
>Maintainer</TD
><TD CLASS="infoval"
>cabal-devel@haskell.org</TD
></TR
></TABLE
></TD
></TR
></TABLE
></TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="section1"
>Description</TD
></TR
><TR
><TD CLASS="doc"
><P
>Utilities for parsing PackageDescription and InstalledPackageInfo.
</P
><P
>The <TT
>.cabal</TT
> file format is not trivial, especially with the introduction
 of configurations and the section syntax that goes with that. This module
 has a bunch of parsing functions that is used by the <TT
>.cabal</TT
> parser and a
 couple others. It has the parsing framework code and also little parsers for
 many of the formats we get in various <TT
>.cabal</TT
> file fields, like module
 names, comma separated lists etc.
</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"
><SPAN CLASS="keyword"
>type</SPAN
> <A HREF="#t%3ALineNo"
>LineNo</A
> = <A HREF="../ghc-prim/GHC-Types.html#t%3AInt"
>Int</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%3APError"
>PError</A
>  </TD
></TR
><TR
><TD CLASS="body"
><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"
><TR
><TD CLASS="decl"
>= <A HREF="#v%3AAmbigousParse"
>AmbigousParse</A
> <A HREF="../base/Data-Char.html#t%3AString"
>String</A
> <A HREF="Distribution-ParseUtils.html#t%3ALineNo"
>LineNo</A
></TD
></TR
><TR
><TD CLASS="decl"
>| <A HREF="#v%3ANoParse"
>NoParse</A
> <A HREF="../base/Data-Char.html#t%3AString"
>String</A
> <A HREF="Distribution-ParseUtils.html#t%3ALineNo"
>LineNo</A
></TD
></TR
><TR
><TD CLASS="decl"
>| <A HREF="#v%3ATabsError"
>TabsError</A
> <A HREF="Distribution-ParseUtils.html#t%3ALineNo"
>LineNo</A
></TD
></TR
><TR
><TD CLASS="decl"
>| <A HREF="#v%3AFromString"
>FromString</A
> <A HREF="../base/Data-Char.html#t%3AString"
>String</A
> (<A HREF="../base/Data-Maybe.html#t%3AMaybe"
>Maybe</A
> <A HREF="Distribution-ParseUtils.html#t%3ALineNo"
>LineNo</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%3APWarning"
>PWarning</A
>  </TD
></TR
><TR
><TD CLASS="body"
><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"
><TR
><TD CLASS="decl"
>= <A HREF="#v%3APWarning"
>PWarning</A
> <A HREF="../base/Data-Char.html#t%3AString"
>String</A
></TD
></TR
><TR
><TD CLASS="decl"
>| <A HREF="#v%3AUTFWarning"
>UTFWarning</A
> <A HREF="Distribution-ParseUtils.html#t%3ALineNo"
>LineNo</A
> <A HREF="../base/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%3AlocatedErrorMsg"
>locatedErrorMsg</A
> :: <A HREF="Distribution-ParseUtils.html#t%3APError"
>PError</A
> -&gt; (<A HREF="../base/Data-Maybe.html#t%3AMaybe"
>Maybe</A
> <A HREF="Distribution-ParseUtils.html#t%3ALineNo"
>LineNo</A
>, <A HREF="../base/Data-Char.html#t%3AString"
>String</A
>)</TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="#v%3AsyntaxError"
>syntaxError</A
> ::  <A HREF="Distribution-ParseUtils.html#t%3ALineNo"
>LineNo</A
> -&gt; <A HREF="../base/Data-Char.html#t%3AString"
>String</A
> -&gt; <A HREF="Distribution-ParseUtils.html#t%3AParseResult"
>ParseResult</A
> a</TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="#v%3Awarning"
>warning</A
> :: <A HREF="../base/Data-Char.html#t%3AString"
>String</A
> -&gt; <A HREF="Distribution-ParseUtils.html#t%3AParseResult"
>ParseResult</A
> <A HREF="../ghc-prim/GHC-Unit.html#t%3A%28%29"
>()</A
></TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="#v%3ArunP"
>runP</A
> ::  <A HREF="Distribution-ParseUtils.html#t%3ALineNo"
>LineNo</A
> -&gt; <A HREF="../base/Data-Char.html#t%3AString"
>String</A
> -&gt; <A HREF="Distribution-Compat-ReadP.html#t%3AReadP"
>ReadP</A
> a a -&gt; <A HREF="../base/Data-Char.html#t%3AString"
>String</A
> -&gt; <A HREF="Distribution-ParseUtils.html#t%3AParseResult"
>ParseResult</A
> a</TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="#v%3ArunE"
>runE</A
> ::  <A HREF="Distribution-ParseUtils.html#t%3ALineNo"
>LineNo</A
> -&gt; <A HREF="../base/Data-Char.html#t%3AString"
>String</A
> -&gt; <A HREF="Distribution-ReadE.html#t%3AReadE"
>ReadE</A
> a -&gt; <A HREF="../base/Data-Char.html#t%3AString"
>String</A
> -&gt; <A HREF="Distribution-ParseUtils.html#t%3AParseResult"
>ParseResult</A
> 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%3AParseFailed"
>ParseFailed</A
> <A HREF="Distribution-ParseUtils.html#t%3APError"
>PError</A
></TD
></TR
><TR
><TD CLASS="decl"
>| <A HREF="#v%3AParseOk"
>ParseOk</A
> [<A HREF="Distribution-ParseUtils.html#t%3APWarning"
>PWarning</A
>] a</TD
></TR
></TABLE
></TD
></TR
></TABLE
></TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="#v%3AcatchParseError"
>catchParseError</A
> ::  <A HREF="Distribution-ParseUtils.html#t%3AParseResult"
>ParseResult</A
> a -&gt; (<A HREF="Distribution-ParseUtils.html#t%3APError"
>PError</A
> -&gt; <A HREF="Distribution-ParseUtils.html#t%3AParseResult"
>ParseResult</A
> a) -&gt; <A HREF="Distribution-ParseUtils.html#t%3AParseResult"
>ParseResult</A
> a</TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="#v%3AparseFail"
>parseFail</A
> ::  <A HREF="Distribution-ParseUtils.html#t%3APError"
>PError</A
> -&gt; <A HREF="Distribution-ParseUtils.html#t%3AParseResult"
>ParseResult</A
> a</TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="#v%3AshowPWarning"
>showPWarning</A
> :: <A HREF="../base/System-IO.html#t%3AFilePath"
>FilePath</A
> -&gt; <A HREF="Distribution-ParseUtils.html#t%3APWarning"
>PWarning</A
> -&gt; <A HREF="../base/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%3AField"
>Field</A
>  </TD
></TR
><TR
><TD CLASS="body"
><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"
><TR
><TD CLASS="decl"
>= <A HREF="#v%3AF"
>F</A
> <A HREF="Distribution-ParseUtils.html#t%3ALineNo"
>LineNo</A
> <A HREF="../base/Data-Char.html#t%3AString"
>String</A
> <A HREF="../base/Data-Char.html#t%3AString"
>String</A
></TD
></TR
><TR
><TD CLASS="decl"
>| <A HREF="#v%3ASection"
>Section</A
> <A HREF="Distribution-ParseUtils.html#t%3ALineNo"
>LineNo</A
> <A HREF="../base/Data-Char.html#t%3AString"
>String</A
> <A HREF="../base/Data-Char.html#t%3AString"
>String</A
> [<A HREF="Distribution-ParseUtils.html#t%3AField"
>Field</A
>]</TD
></TR
><TR
><TD CLASS="decl"
>| <A HREF="#v%3AIfBlock"
>IfBlock</A
> <A HREF="Distribution-ParseUtils.html#t%3ALineNo"
>LineNo</A
> <A HREF="../base/Data-Char.html#t%3AString"
>String</A
> [<A HREF="Distribution-ParseUtils.html#t%3AField"
>Field</A
>] [<A HREF="Distribution-ParseUtils.html#t%3AField"
>Field</A
>]</TD
></TR
></TABLE
></TD
></TR
></TABLE
></TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="#v%3AfName"
>fName</A
> :: <A HREF="Distribution-ParseUtils.html#t%3AField"
>Field</A
> -&gt; <A HREF="../base/Data-Char.html#t%3AString"
>String</A
></TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="#v%3AlineNo"
>lineNo</A
> :: <A HREF="Distribution-ParseUtils.html#t%3AField"
>Field</A
> -&gt; <A HREF="Distribution-ParseUtils.html#t%3ALineNo"
>LineNo</A
></TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><SPAN CLASS="keyword"
>data</SPAN
>  <A HREF="#t%3AFieldDescr"
>FieldDescr</A
> a = <A HREF="#v%3AFieldDescr"
>FieldDescr</A
> {<TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"
><TR
><TD CLASS="recfield"
><A HREF="#v%3AfieldName"
>fieldName</A
> :: <A HREF="../base/Data-Char.html#t%3AString"
>String</A
></TD
></TR
><TR
><TD CLASS="recfield"
><A HREF="#v%3AfieldGet"
>fieldGet</A
> :: a -&gt; <A HREF="../pretty/Text-PrettyPrint-HughesPJ.html#t%3ADoc"
>Doc</A
></TD
></TR
><TR
><TD CLASS="recfield"
><A HREF="#v%3AfieldSet"
>fieldSet</A
> :: <A HREF="Distribution-ParseUtils.html#t%3ALineNo"
>LineNo</A
> -&gt; <A HREF="../base/Data-Char.html#t%3AString"
>String</A
> -&gt; a -&gt; <A HREF="Distribution-ParseUtils.html#t%3AParseResult"
>ParseResult</A
> a</TD
></TR
></TABLE
>}</TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="#v%3AppField"
>ppField</A
> :: <A HREF="../base/Data-Char.html#t%3AString"
>String</A
> -&gt; <A HREF="../pretty/Text-PrettyPrint-HughesPJ.html#t%3ADoc"
>Doc</A
> -&gt; <A HREF="../pretty/Text-PrettyPrint-HughesPJ.html#t%3ADoc"
>Doc</A
></TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="#v%3AppFields"
>ppFields</A
> ::  [<A HREF="Distribution-ParseUtils.html#t%3AFieldDescr"
>FieldDescr</A
> a] -&gt; a -&gt; <A HREF="../pretty/Text-PrettyPrint-HughesPJ.html#t%3ADoc"
>Doc</A
></TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="#v%3AreadFields"
>readFields</A
> :: <A HREF="../base/Data-Char.html#t%3AString"
>String</A
> -&gt; <A HREF="Distribution-ParseUtils.html#t%3AParseResult"
>ParseResult</A
> [<A HREF="Distribution-ParseUtils.html#t%3AField"
>Field</A
>]</TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="#v%3AshowFields"
>showFields</A
> ::  [<A HREF="Distribution-ParseUtils.html#t%3AFieldDescr"
>FieldDescr</A
> a] -&gt; a -&gt; <A HREF="../base/Data-Char.html#t%3AString"
>String</A
></TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="#v%3AshowSingleNamedField"
>showSingleNamedField</A
> ::  [<A HREF="Distribution-ParseUtils.html#t%3AFieldDescr"
>FieldDescr</A
> a] -&gt; <A HREF="../base/Data-Char.html#t%3AString"
>String</A
> -&gt; <A HREF="../base/Data-Maybe.html#t%3AMaybe"
>Maybe</A
> (a -&gt; <A HREF="../base/Data-Char.html#t%3AString"
>String</A
>)</TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="#v%3AparseFields"
>parseFields</A
> ::  [<A HREF="Distribution-ParseUtils.html#t%3AFieldDescr"
>FieldDescr</A
> a] -&gt; a -&gt; <A HREF="../base/Data-Char.html#t%3AString"
>String</A
> -&gt; <A HREF="Distribution-ParseUtils.html#t%3AParseResult"
>ParseResult</A
> a</TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="#v%3AparseFilePathQ"
>parseFilePathQ</A
> ::  <A HREF="Distribution-Compat-ReadP.html#t%3AReadP"
>ReadP</A
> r <A HREF="../base/System-IO.html#t%3AFilePath"
>FilePath</A
></TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="#v%3AparseTokenQ"
>parseTokenQ</A
> ::  <A HREF="Distribution-Compat-ReadP.html#t%3AReadP"
>ReadP</A
> r <A HREF="../base/Data-Char.html#t%3AString"
>String</A
></TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="#v%3AparseTokenQ%27"
>parseTokenQ'</A
> ::  <A HREF="Distribution-Compat-ReadP.html#t%3AReadP"
>ReadP</A
> r <A HREF="../base/Data-Char.html#t%3AString"
>String</A
></TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="#v%3AparseModuleNameQ"
>parseModuleNameQ</A
> ::  <A HREF="Distribution-Compat-ReadP.html#t%3AReadP"
>ReadP</A
> r <A HREF="Distribution-ModuleName.html#t%3AModuleName"
>ModuleName</A
></TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="#v%3AparseBuildTool"
>parseBuildTool</A
> ::  <A HREF="Distribution-Compat-ReadP.html#t%3AReadP"
>ReadP</A
> r <A HREF="Distribution-Package.html#t%3ADependency"
>Dependency</A
></TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="#v%3AparsePkgconfigDependency"
>parsePkgconfigDependency</A
> ::  <A HREF="Distribution-Compat-ReadP.html#t%3AReadP"
>ReadP</A
> r <A HREF="Distribution-Package.html#t%3ADependency"
>Dependency</A
></TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="#v%3AparseOptVersion"
>parseOptVersion</A
> ::  <A HREF="Distribution-Compat-ReadP.html#t%3AReadP"
>ReadP</A
> r <A HREF="../base/Data-Version.html#t%3AVersion"
>Version</A
></TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="#v%3AparsePackageNameQ"
>parsePackageNameQ</A
> ::  <A HREF="Distribution-Compat-ReadP.html#t%3AReadP"
>ReadP</A
> r <A HREF="Distribution-Package.html#t%3APackageName"
>PackageName</A
></TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="#v%3AparseVersionRangeQ"
>parseVersionRangeQ</A
> ::  <A HREF="Distribution-Compat-ReadP.html#t%3AReadP"
>ReadP</A
> r <A HREF="Distribution-Version.html#t%3AVersionRange"
>VersionRange</A
></TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="#v%3AparseTestedWithQ"
>parseTestedWithQ</A
> ::  <A HREF="Distribution-Compat-ReadP.html#t%3AReadP"
>ReadP</A
> r (<A HREF="Distribution-Compiler.html#t%3ACompilerFlavor"
>CompilerFlavor</A
>, <A HREF="Distribution-Version.html#t%3AVersionRange"
>VersionRange</A
>)</TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="#v%3AparseLicenseQ"
>parseLicenseQ</A
> ::  <A HREF="Distribution-Compat-ReadP.html#t%3AReadP"
>ReadP</A
> r <A HREF="Distribution-License.html#t%3ALicense"
>License</A
></TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="#v%3AparseExtensionQ"
>parseExtensionQ</A
> ::  <A HREF="Distribution-Compat-ReadP.html#t%3AReadP"
>ReadP</A
> r <A HREF="Language-Haskell-Extension.html#t%3AExtension"
>Extension</A
></TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="#v%3AparseSepList"
>parseSepList</A
> ::  <A HREF="Distribution-Compat-ReadP.html#t%3AReadP"
>ReadP</A
> r b -&gt; <A HREF="Distribution-Compat-ReadP.html#t%3AReadP"
>ReadP</A
> r a -&gt; <A HREF="Distribution-Compat-ReadP.html#t%3AReadP"
>ReadP</A
> r [a]</TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="#v%3AparseCommaList"
>parseCommaList</A
> ::  <A HREF="Distribution-Compat-ReadP.html#t%3AReadP"
>ReadP</A
> r a -&gt; <A HREF="Distribution-Compat-ReadP.html#t%3AReadP"
>ReadP</A
> r [a]</TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="#v%3AparseOptCommaList"
>parseOptCommaList</A
> ::  <A HREF="Distribution-Compat-ReadP.html#t%3AReadP"
>ReadP</A
> r a -&gt; <A HREF="Distribution-Compat-ReadP.html#t%3AReadP"
>ReadP</A
> r [a]</TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="#v%3AshowFilePath"
>showFilePath</A
> :: <A HREF="../base/System-IO.html#t%3AFilePath"
>FilePath</A
> -&gt; <A HREF="../pretty/Text-PrettyPrint-HughesPJ.html#t%3ADoc"
>Doc</A
></TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="#v%3AshowToken"
>showToken</A
> :: <A HREF="../base/Data-Char.html#t%3AString"
>String</A
> -&gt; <A HREF="../pretty/Text-PrettyPrint-HughesPJ.html#t%3ADoc"
>Doc</A
></TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="#v%3AshowTestedWith"
>showTestedWith</A
> :: (<A HREF="Distribution-Compiler.html#t%3ACompilerFlavor"
>CompilerFlavor</A
>, <A HREF="Distribution-Version.html#t%3AVersionRange"
>VersionRange</A
>) -&gt; <A HREF="../pretty/Text-PrettyPrint-HughesPJ.html#t%3ADoc"
>Doc</A
></TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="#v%3AshowFreeText"
>showFreeText</A
> :: <A HREF="../base/Data-Char.html#t%3AString"
>String</A
> -&gt; <A HREF="../pretty/Text-PrettyPrint-HughesPJ.html#t%3ADoc"
>Doc</A
></TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="#v%3AparseFreeText"
>parseFreeText</A
> ::  <A HREF="Distribution-Compat-ReadP.html#t%3AReadP"
>ReadP</A
> s <A HREF="../base/Data-Char.html#t%3AString"
>String</A
></TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="#v%3Afield"
>field</A
> ::  <A HREF="../base/Data-Char.html#t%3AString"
>String</A
> -&gt; (a -&gt; <A HREF="../pretty/Text-PrettyPrint-HughesPJ.html#t%3ADoc"
>Doc</A
>) -&gt; <A HREF="Distribution-Compat-ReadP.html#t%3AReadP"
>ReadP</A
> a a -&gt; <A HREF="Distribution-ParseUtils.html#t%3AFieldDescr"
>FieldDescr</A
> a</TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="#v%3AsimpleField"
>simpleField</A
> ::  <A HREF="../base/Data-Char.html#t%3AString"
>String</A
> -&gt; (a -&gt; <A HREF="../pretty/Text-PrettyPrint-HughesPJ.html#t%3ADoc"
>Doc</A
>) -&gt; <A HREF="Distribution-Compat-ReadP.html#t%3AReadP"
>ReadP</A
> a a -&gt; (b -&gt; a) -&gt; (a -&gt; b -&gt; b) -&gt; <A HREF="Distribution-ParseUtils.html#t%3AFieldDescr"
>FieldDescr</A
> b</TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="#v%3AlistField"
>listField</A
> ::  <A HREF="../base/Data-Char.html#t%3AString"
>String</A
> -&gt; (a -&gt; <A HREF="../pretty/Text-PrettyPrint-HughesPJ.html#t%3ADoc"
>Doc</A
>) -&gt; <A HREF="Distribution-Compat-ReadP.html#t%3AReadP"
>ReadP</A
> [a] a -&gt; (b -&gt; [a]) -&gt; ([a] -&gt; b -&gt; b) -&gt; <A HREF="Distribution-ParseUtils.html#t%3AFieldDescr"
>FieldDescr</A
> b</TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="#v%3AspaceListField"
>spaceListField</A
> ::  <A HREF="../base/Data-Char.html#t%3AString"
>String</A
> -&gt; (a -&gt; <A HREF="../pretty/Text-PrettyPrint-HughesPJ.html#t%3ADoc"
>Doc</A
>) -&gt; <A HREF="Distribution-Compat-ReadP.html#t%3AReadP"
>ReadP</A
> [a] a -&gt; (b -&gt; [a]) -&gt; ([a] -&gt; b -&gt; b) -&gt; <A HREF="Distribution-ParseUtils.html#t%3AFieldDescr"
>FieldDescr</A
> b</TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="#v%3AcommaListField"
>commaListField</A
> ::  <A HREF="../base/Data-Char.html#t%3AString"
>String</A
> -&gt; (a -&gt; <A HREF="../pretty/Text-PrettyPrint-HughesPJ.html#t%3ADoc"
>Doc</A
>) -&gt; <A HREF="Distribution-Compat-ReadP.html#t%3AReadP"
>ReadP</A
> [a] a -&gt; (b -&gt; [a]) -&gt; ([a] -&gt; b -&gt; b) -&gt; <A HREF="Distribution-ParseUtils.html#t%3AFieldDescr"
>FieldDescr</A
> b</TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="#v%3AoptsField"
>optsField</A
> ::  <A HREF="../base/Data-Char.html#t%3AString"
>String</A
> -&gt; <A HREF="Distribution-Compiler.html#t%3ACompilerFlavor"
>CompilerFlavor</A
> -&gt; (b -&gt; [(<A HREF="Distribution-Compiler.html#t%3ACompilerFlavor"
>CompilerFlavor</A
>, [<A HREF="../base/Data-Char.html#t%3AString"
>String</A
>])]) -&gt; ([(<A HREF="Distribution-Compiler.html#t%3ACompilerFlavor"
>CompilerFlavor</A
>, [<A HREF="../base/Data-Char.html#t%3AString"
>String</A
>])] -&gt; b -&gt; b) -&gt; <A HREF="Distribution-ParseUtils.html#t%3AFieldDescr"
>FieldDescr</A
> b</TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="#v%3AliftField"
>liftField</A
> ::  (b -&gt; a) -&gt; (a -&gt; b -&gt; b) -&gt; <A HREF="Distribution-ParseUtils.html#t%3AFieldDescr"
>FieldDescr</A
> a -&gt; <A HREF="Distribution-ParseUtils.html#t%3AFieldDescr"
>FieldDescr</A
> b</TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="#v%3AboolField"
>boolField</A
> ::  <A HREF="../base/Data-Char.html#t%3AString"
>String</A
> -&gt; (b -&gt; <A HREF="../ghc-prim/GHC-Bool.html#t%3ABool"
>Bool</A
>) -&gt; (<A HREF="../ghc-prim/GHC-Bool.html#t%3ABool"
>Bool</A
> -&gt; b -&gt; b) -&gt; <A HREF="Distribution-ParseUtils.html#t%3AFieldDescr"
>FieldDescr</A
> b</TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="#v%3AparseQuoted"
>parseQuoted</A
> ::  <A HREF="Distribution-Compat-ReadP.html#t%3AReadP"
>ReadP</A
> r a -&gt; <A HREF="Distribution-Compat-ReadP.html#t%3AReadP"
>ReadP</A
> r a</TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><SPAN CLASS="keyword"
>type</SPAN
> <A HREF="#t%3AUnrecFieldParser"
>UnrecFieldParser</A
> a = (<A HREF="../base/Data-Char.html#t%3AString"
>String</A
>, <A HREF="../base/Data-Char.html#t%3AString"
>String</A
>) -&gt; a -&gt; <A HREF="../base/Data-Maybe.html#t%3AMaybe"
>Maybe</A
> a</TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="#v%3AwarnUnrec"
>warnUnrec</A
> ::  <A HREF="Distribution-ParseUtils.html#t%3AUnrecFieldParser"
>UnrecFieldParser</A
> a</TD
></TR
><TR
><TD CLASS="s8"
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="#v%3AignoreUnrec"
>ignoreUnrec</A
> ::  <A HREF="Distribution-ParseUtils.html#t%3AUnrecFieldParser"
>UnrecFieldParser</A
> a</TD
></TR
></TABLE
></TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="section1"
>Documentation</TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
><SPAN CLASS="keyword"
>type</SPAN
> <A NAME="t:LineNo"
><A NAME="t%3ALineNo"
></A
></A
><B
>LineNo</B
> = <A HREF="../ghc-prim/GHC-Types.html#t%3AInt"
>Int</A
></TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
><SPAN CLASS="keyword"
>data</SPAN
>  <A NAME="t:PError"
><A NAME="t%3APError"
></A
></A
><B
>PError</B
>  </TD
></TR
><TR
><TD CLASS="body"
><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"
><TR
><TD CLASS="section4"
>Constructors</TD
></TR
><TR
><TD CLASS="body"
><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0"
><TR
><TD CLASS="arg"
><A NAME="v:AmbigousParse"
><A NAME="v%3AAmbigousParse"
></A
></A
><B
>AmbigousParse</B
> <A HREF="../base/Data-Char.html#t%3AString"
>String</A
> <A HREF="Distribution-ParseUtils.html#t%3ALineNo"
>LineNo</A
></TD
><TD CLASS="rdoc"
></TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:NoParse"
><A NAME="v%3ANoParse"
></A
></A
><B
>NoParse</B
> <A HREF="../base/Data-Char.html#t%3AString"
>String</A
> <A HREF="Distribution-ParseUtils.html#t%3ALineNo"
>LineNo</A
></TD
><TD CLASS="rdoc"
></TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:TabsError"
><A NAME="v%3ATabsError"
></A
></A
><B
>TabsError</B
> <A HREF="Distribution-ParseUtils.html#t%3ALineNo"
>LineNo</A
></TD
><TD CLASS="rdoc"
></TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:FromString"
><A NAME="v%3AFromString"
></A
></A
><B
>FromString</B
> <A HREF="../base/Data-Char.html#t%3AString"
>String</A
> (<A HREF="../base/Data-Maybe.html#t%3AMaybe"
>Maybe</A
> <A HREF="Distribution-ParseUtils.html#t%3ALineNo"
>LineNo</A
>)</TD
><TD CLASS="rdoc"
></TD
></TR
></TABLE
></TD
></TR
><TR
><TD CLASS="section4"
><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'i:PError')" ALT="show/hide"
> Instances</TD
></TR
><TR
><TD CLASS="body"
><DIV ID="i:PError" STYLE="display:block;"
><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0"
><TR
><TD CLASS="decl"
><A HREF="../base/Text-Show.html#t%3AShow"
>Show</A
> <A HREF="Distribution-ParseUtils.html#t%3APError"
>PError</A
></TD
></TR
></TABLE
></DIV
></TD
></TR
></TABLE
></TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
><SPAN CLASS="keyword"
>data</SPAN
>  <A NAME="t:PWarning"
><A NAME="t%3APWarning"
></A
></A
><B
>PWarning</B
>  </TD
></TR
><TR
><TD CLASS="body"
><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"
><TR
><TD CLASS="section4"
>Constructors</TD
></TR
><TR
><TD CLASS="body"
><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0"
><TR
><TD CLASS="arg"
><A NAME="v:PWarning"
><A NAME="v%3APWarning"
></A
></A
><B
>PWarning</B
> <A HREF="../base/Data-Char.html#t%3AString"
>String</A
></TD
><TD CLASS="rdoc"
></TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:UTFWarning"
><A NAME="v%3AUTFWarning"
></A
></A
><B
>UTFWarning</B
> <A HREF="Distribution-ParseUtils.html#t%3ALineNo"
>LineNo</A
> <A HREF="../base/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:PWarning')" ALT="show/hide"
> Instances</TD
></TR
><TR
><TD CLASS="body"
><DIV ID="i:PWarning" STYLE="display:block;"
><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0"
><TR
><TD CLASS="decl"
><A HREF="../base/Text-Show.html#t%3AShow"
>Show</A
> <A HREF="Distribution-ParseUtils.html#t%3APWarning"
>PWarning</A
></TD
></TR
></TABLE
></DIV
></TD
></TR
></TABLE
></TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
><A NAME="v:locatedErrorMsg"
><A NAME="v%3AlocatedErrorMsg"
></A
></A
><B
>locatedErrorMsg</B
> :: <A HREF="Distribution-ParseUtils.html#t%3APError"
>PError</A
> -&gt; (<A HREF="../base/Data-Maybe.html#t%3AMaybe"
>Maybe</A
> <A HREF="Distribution-ParseUtils.html#t%3ALineNo"
>LineNo</A
>, <A HREF="../base/Data-Char.html#t%3AString"
>String</A
>)</TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
><A NAME="v:syntaxError"
><A NAME="v%3AsyntaxError"
></A
></A
><B
>syntaxError</B
> ::  <A HREF="Distribution-ParseUtils.html#t%3ALineNo"
>LineNo</A
> -&gt; <A HREF="../base/Data-Char.html#t%3AString"
>String</A
> -&gt; <A HREF="Distribution-ParseUtils.html#t%3AParseResult"
>ParseResult</A
> a</TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
><A NAME="v:warning"
><A NAME="v%3Awarning"
></A
></A
><B
>warning</B
> :: <A HREF="../base/Data-Char.html#t%3AString"
>String</A
> -&gt; <A HREF="Distribution-ParseUtils.html#t%3AParseResult"
>ParseResult</A
> <A HREF="../ghc-prim/GHC-Unit.html#t%3A%28%29"
>()</A
></TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
><A NAME="v:runP"
><A NAME="v%3ArunP"
></A
></A
><B
>runP</B
> ::  <A HREF="Distribution-ParseUtils.html#t%3ALineNo"
>LineNo</A
> -&gt; <A HREF="../base/Data-Char.html#t%3AString"
>String</A
> -&gt; <A HREF="Distribution-Compat-ReadP.html#t%3AReadP"
>ReadP</A
> a a -&gt; <A HREF="../base/Data-Char.html#t%3AString"
>String</A
> -&gt; <A HREF="Distribution-ParseUtils.html#t%3AParseResult"
>ParseResult</A
> a</TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
><A NAME="v:runE"
><A NAME="v%3ArunE"
></A
></A
><B
>runE</B
> ::  <A HREF="Distribution-ParseUtils.html#t%3ALineNo"
>LineNo</A
> -&gt; <A HREF="../base/Data-Char.html#t%3AString"
>String</A
> -&gt; <A HREF="Distribution-ReadE.html#t%3AReadE"
>ReadE</A
> a -&gt; <A HREF="../base/Data-Char.html#t%3AString"
>String</A
> -&gt; <A HREF="Distribution-ParseUtils.html#t%3AParseResult"
>ParseResult</A
> a</TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
><SPAN CLASS="keyword"
>data</SPAN
>  <A NAME="t:ParseResult"
><A NAME="t%3AParseResult"
></A
></A
><B
>ParseResult</B
> a </TD
></TR
><TR
><TD CLASS="body"
><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"
><TR
><TD CLASS="section4"
>Constructors</TD
></TR
><TR
><TD CLASS="body"
><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0"
><TR
><TD CLASS="arg"
><A NAME="v:ParseFailed"
><A NAME="v%3AParseFailed"
></A
></A
><B
>ParseFailed</B
> <A HREF="Distribution-ParseUtils.html#t%3APError"
>PError</A
></TD
><TD CLASS="rdoc"
></TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:ParseOk"
><A NAME="v%3AParseOk"
></A
></A
><B
>ParseOk</B
> [<A HREF="Distribution-ParseUtils.html#t%3APWarning"
>PWarning</A
>] a</TD
><TD CLASS="rdoc"
></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="../base/Control-Monad.html#t%3AMonad"
>Monad</A
> <A HREF="Distribution-ParseUtils.html#t%3AParseResult"
>ParseResult</A
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="../base/Text-Show.html#t%3AShow"
>Show</A
> a =&gt; <A HREF="../base/Text-Show.html#t%3AShow"
>Show</A
> (<A HREF="Distribution-ParseUtils.html#t%3AParseResult"
>ParseResult</A
> a)</TD
></TR
></TABLE
></DIV
></TD
></TR
></TABLE
></TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
><A NAME="v:catchParseError"
><A NAME="v%3AcatchParseError"
></A
></A
><B
>catchParseError</B
> ::  <A HREF="Distribution-ParseUtils.html#t%3AParseResult"
>ParseResult</A
> a -&gt; (<A HREF="Distribution-ParseUtils.html#t%3APError"
>PError</A
> -&gt; <A HREF="Distribution-ParseUtils.html#t%3AParseResult"
>ParseResult</A
> a) -&gt; <A HREF="Distribution-ParseUtils.html#t%3AParseResult"
>ParseResult</A
> a</TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
><A NAME="v:parseFail"
><A NAME="v%3AparseFail"
></A
></A
><B
>parseFail</B
> ::  <A HREF="Distribution-ParseUtils.html#t%3APError"
>PError</A
> -&gt; <A HREF="Distribution-ParseUtils.html#t%3AParseResult"
>ParseResult</A
> a</TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
><A NAME="v:showPWarning"
><A NAME="v%3AshowPWarning"
></A
></A
><B
>showPWarning</B
> :: <A HREF="../base/System-IO.html#t%3AFilePath"
>FilePath</A
> -&gt; <A HREF="Distribution-ParseUtils.html#t%3APWarning"
>PWarning</A
> -&gt; <A HREF="../base/Data-Char.html#t%3AString"
>String</A
></TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
><SPAN CLASS="keyword"
>data</SPAN
>  <A NAME="t:Field"
><A NAME="t%3AField"
></A
></A
><B
>Field</B
>  </TD
></TR
><TR
><TD CLASS="body"
><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"
><TR
><TD CLASS="section4"
>Constructors</TD
></TR
><TR
><TD CLASS="body"
><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0"
><TR
><TD CLASS="arg"
><A NAME="v:F"
><A NAME="v%3AF"
></A
></A
><B
>F</B
> <A HREF="Distribution-ParseUtils.html#t%3ALineNo"
>LineNo</A
> <A HREF="../base/Data-Char.html#t%3AString"
>String</A
> <A HREF="../base/Data-Char.html#t%3AString"
>String</A
></TD
><TD CLASS="rdoc"
>A regular <TT
><A HREF="property>: <value"
>property&gt;: &lt;value</A
></TT
> field
</TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:Section"
><A NAME="v%3ASection"
></A
></A
><B
>Section</B
> <A HREF="Distribution-ParseUtils.html#t%3ALineNo"
>LineNo</A
> <A HREF="../base/Data-Char.html#t%3AString"
>String</A
> <A HREF="../base/Data-Char.html#t%3AString"
>String</A
> [<A HREF="Distribution-ParseUtils.html#t%3AField"
>Field</A
>]</TD
><TD CLASS="rdoc"
><P
>A section with a name and possible parameter.  The syntactic
 structure is:
</P
><PRE
>
   <A HREF="sectionname> <arg"
>sectionname&gt; &lt;arg</A
> {
     <A HREF="field"
>field</A
>*
   }
</PRE
></TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:IfBlock"
><A NAME="v%3AIfBlock"
></A
></A
><B
>IfBlock</B
> <A HREF="Distribution-ParseUtils.html#t%3ALineNo"
>LineNo</A
> <A HREF="../base/Data-Char.html#t%3AString"
>String</A
> [<A HREF="Distribution-ParseUtils.html#t%3AField"
>Field</A
>] [<A HREF="Distribution-ParseUtils.html#t%3AField"
>Field</A
>]</TD
><TD CLASS="rdoc"
><P
>A conditional block with an optional else branch:
</P
><PRE
>
  if <A HREF="condition"
>condition</A
> {
    <A HREF="field"
>field</A
>*
  } else {
    <A HREF="field"
>field</A
>*
  }
</PRE
></TD
></TR
></TABLE
></TD
></TR
><TR
><TD CLASS="section4"
><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'i:Field')" ALT="show/hide"
> Instances</TD
></TR
><TR
><TD CLASS="body"
><DIV ID="i:Field" STYLE="display:block;"
><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0"
><TR
><TD CLASS="decl"
><A HREF="../base/Data-Eq.html#t%3AEq"
>Eq</A
> <A HREF="Distribution-ParseUtils.html#t%3AField"
>Field</A
></TD
></TR
><TR
><TD CLASS="decl"
><A HREF="../base/Text-Show.html#t%3AShow"
>Show</A
> <A HREF="Distribution-ParseUtils.html#t%3AField"
>Field</A
></TD
></TR
></TABLE
></DIV
></TD
></TR
></TABLE
></TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
><A NAME="v:fName"
><A NAME="v%3AfName"
></A
></A
><B
>fName</B
> :: <A HREF="Distribution-ParseUtils.html#t%3AField"
>Field</A
> -&gt; <A HREF="../base/Data-Char.html#t%3AString"
>String</A
></TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
><A NAME="v:lineNo"
><A NAME="v%3AlineNo"
></A
></A
><B
>lineNo</B
> :: <A HREF="Distribution-ParseUtils.html#t%3AField"
>Field</A
> -&gt; <A HREF="Distribution-ParseUtils.html#t%3ALineNo"
>LineNo</A
></TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
><SPAN CLASS="keyword"
>data</SPAN
>  <A NAME="t:FieldDescr"
><A NAME="t%3AFieldDescr"
></A
></A
><B
>FieldDescr</B
> a </TD
></TR
><TR
><TD CLASS="body"
><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"
><TR
><TD CLASS="ndoc"
>Field descriptor.  The parameter <TT
>a</TT
> parameterizes over where the field's
   value is stored in.
</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:FieldDescr"
><A NAME="v%3AFieldDescr"
></A
></A
><B
>FieldDescr</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:fieldName"
><A NAME="v%3AfieldName"
></A
></A
><B
>fieldName</B
> :: <A HREF="../base/Data-Char.html#t%3AString"
>String</A
></TD
><TD CLASS="rdoc"
></TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:fieldGet"
><A NAME="v%3AfieldGet"
></A
></A
><B
>fieldGet</B
> :: a -&gt; <A HREF="../pretty/Text-PrettyPrint-HughesPJ.html#t%3ADoc"
>Doc</A
></TD
><TD CLASS="rdoc"
></TD
></TR
><TR
><TD CLASS="arg"
><A NAME="v:fieldSet"
><A NAME="v%3AfieldSet"
></A
></A
><B
>fieldSet</B
> :: <A HREF="Distribution-ParseUtils.html#t%3ALineNo"
>LineNo</A
> -&gt; <A HREF="../base/Data-Char.html#t%3AString"
>String</A
> -&gt; a -&gt; <A HREF="Distribution-ParseUtils.html#t%3AParseResult"
>ParseResult</A
> a</TD
><TD CLASS="rdoc"
><TT
>fieldSet n str x</TT
> Parses the field value from the given input
 string <TT
>str</TT
> and stores the result in <TT
>x</TT
> if the parse was
 successful.  Otherwise, reports an error on line number <TT
>n</TT
>.
</TD
></TR
></TABLE
></TD
></TR
></TABLE
></TD
></TR
></TABLE
></TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
><A NAME="v:ppField"
><A NAME="v%3AppField"
></A
></A
><B
>ppField</B
> :: <A HREF="../base/Data-Char.html#t%3AString"
>String</A
> -&gt; <A HREF="../pretty/Text-PrettyPrint-HughesPJ.html#t%3ADoc"
>Doc</A
> -&gt; <A HREF="../pretty/Text-PrettyPrint-HughesPJ.html#t%3ADoc"
>Doc</A
></TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
><A NAME="v:ppFields"
><A NAME="v%3AppFields"
></A
></A
><B
>ppFields</B
> ::  [<A HREF="Distribution-ParseUtils.html#t%3AFieldDescr"
>FieldDescr</A
> a] -&gt; a -&gt; <A HREF="../pretty/Text-PrettyPrint-HughesPJ.html#t%3ADoc"
>Doc</A
></TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
><A NAME="v:readFields"
><A NAME="v%3AreadFields"
></A
></A
><B
>readFields</B
> :: <A HREF="../base/Data-Char.html#t%3AString"
>String</A
> -&gt; <A HREF="Distribution-ParseUtils.html#t%3AParseResult"
>ParseResult</A
> [<A HREF="Distribution-ParseUtils.html#t%3AField"
>Field</A
>]</TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
><A NAME="v:showFields"
><A NAME="v%3AshowFields"
></A
></A
><B
>showFields</B
> ::  [<A HREF="Distribution-ParseUtils.html#t%3AFieldDescr"
>FieldDescr</A
> a] -&gt; a -&gt; <A HREF="../base/Data-Char.html#t%3AString"
>String</A
></TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
><A NAME="v:showSingleNamedField"
><A NAME="v%3AshowSingleNamedField"
></A
></A
><B
>showSingleNamedField</B
> ::  [<A HREF="Distribution-ParseUtils.html#t%3AFieldDescr"
>FieldDescr</A
> a] -&gt; <A HREF="../base/Data-Char.html#t%3AString"
>String</A
> -&gt; <A HREF="../base/Data-Maybe.html#t%3AMaybe"
>Maybe</A
> (a -&gt; <A HREF="../base/Data-Char.html#t%3AString"
>String</A
>)</TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
><A NAME="v:parseFields"
><A NAME="v%3AparseFields"
></A
></A
><B
>parseFields</B
> ::  [<A HREF="Distribution-ParseUtils.html#t%3AFieldDescr"
>FieldDescr</A
> a] -&gt; a -&gt; <A HREF="../base/Data-Char.html#t%3AString"
>String</A
> -&gt; <A HREF="Distribution-ParseUtils.html#t%3AParseResult"
>ParseResult</A
> a</TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
><A NAME="v:parseFilePathQ"
><A NAME="v%3AparseFilePathQ"
></A
></A
><B
>parseFilePathQ</B
> ::  <A HREF="Distribution-Compat-ReadP.html#t%3AReadP"
>ReadP</A
> r <A HREF="../base/System-IO.html#t%3AFilePath"
>FilePath</A
></TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
><A NAME="v:parseTokenQ"
><A NAME="v%3AparseTokenQ"
></A
></A
><B
>parseTokenQ</B
> ::  <A HREF="Distribution-Compat-ReadP.html#t%3AReadP"
>ReadP</A
> r <A HREF="../base/Data-Char.html#t%3AString"
>String</A
></TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
><A NAME="v:parseTokenQ'"
><A NAME="v%3AparseTokenQ%27"
></A
></A
><B
>parseTokenQ'</B
> ::  <A HREF="Distribution-Compat-ReadP.html#t%3AReadP"
>ReadP</A
> r <A HREF="../base/Data-Char.html#t%3AString"
>String</A
></TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
><A NAME="v:parseModuleNameQ"
><A NAME="v%3AparseModuleNameQ"
></A
></A
><B
>parseModuleNameQ</B
> ::  <A HREF="Distribution-Compat-ReadP.html#t%3AReadP"
>ReadP</A
> r <A HREF="Distribution-ModuleName.html#t%3AModuleName"
>ModuleName</A
></TD
></TR
><TR
><TD CLASS="doc"
>parse a module name
</TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
><A NAME="v:parseBuildTool"
><A NAME="v%3AparseBuildTool"
></A
></A
><B
>parseBuildTool</B
> ::  <A HREF="Distribution-Compat-ReadP.html#t%3AReadP"
>ReadP</A
> r <A HREF="Distribution-Package.html#t%3ADependency"
>Dependency</A
></TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
><A NAME="v:parsePkgconfigDependency"
><A NAME="v%3AparsePkgconfigDependency"
></A
></A
><B
>parsePkgconfigDependency</B
> ::  <A HREF="Distribution-Compat-ReadP.html#t%3AReadP"
>ReadP</A
> r <A HREF="Distribution-Package.html#t%3ADependency"
>Dependency</A
></TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
><A NAME="v:parseOptVersion"
><A NAME="v%3AparseOptVersion"
></A
></A
><B
>parseOptVersion</B
> ::  <A HREF="Distribution-Compat-ReadP.html#t%3AReadP"
>ReadP</A
> r <A HREF="../base/Data-Version.html#t%3AVersion"
>Version</A
></TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
><A NAME="v:parsePackageNameQ"
><A NAME="v%3AparsePackageNameQ"
></A
></A
><B
>parsePackageNameQ</B
> ::  <A HREF="Distribution-Compat-ReadP.html#t%3AReadP"
>ReadP</A
> r <A HREF="Distribution-Package.html#t%3APackageName"
>PackageName</A
></TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
><A NAME="v:parseVersionRangeQ"
><A NAME="v%3AparseVersionRangeQ"
></A
></A
><B
>parseVersionRangeQ</B
> ::  <A HREF="Distribution-Compat-ReadP.html#t%3AReadP"
>ReadP</A
> r <A HREF="Distribution-Version.html#t%3AVersionRange"
>VersionRange</A
></TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
><A NAME="v:parseTestedWithQ"
><A NAME="v%3AparseTestedWithQ"
></A
></A
><B
>parseTestedWithQ</B
> ::  <A HREF="Distribution-Compat-ReadP.html#t%3AReadP"
>ReadP</A
> r (<A HREF="Distribution-Compiler.html#t%3ACompilerFlavor"
>CompilerFlavor</A
>, <A HREF="Distribution-Version.html#t%3AVersionRange"
>VersionRange</A
>)</TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
><A NAME="v:parseLicenseQ"
><A NAME="v%3AparseLicenseQ"
></A
></A
><B
>parseLicenseQ</B
> ::  <A HREF="Distribution-Compat-ReadP.html#t%3AReadP"
>ReadP</A
> r <A HREF="Distribution-License.html#t%3ALicense"
>License</A
></TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
><A NAME="v:parseExtensionQ"
><A NAME="v%3AparseExtensionQ"
></A
></A
><B
>parseExtensionQ</B
> ::  <A HREF="Distribution-Compat-ReadP.html#t%3AReadP"
>ReadP</A
> r <A HREF="Language-Haskell-Extension.html#t%3AExtension"
>Extension</A
></TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
><A NAME="v:parseSepList"
><A NAME="v%3AparseSepList"
></A
></A
><B
>parseSepList</B
></TD
></TR
><TR
><TD CLASS="body"
><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"
><TR
><TD CLASS="arg"
>:: </TD
><TD CLASS="rdoc"
></TD
></TR
><TR
><TD CLASS="arg"
>=&gt; <A HREF="Distribution-Compat-ReadP.html#t%3AReadP"
>ReadP</A
> r b</TD
><TD CLASS="rdoc"
></TD
></TR
><TR
><TD CLASS="arg"
>-&gt; <A HREF="Distribution-Compat-ReadP.html#t%3AReadP"
>ReadP</A
> r a</TD
><TD CLASS="rdoc"
>The parser for the stuff between commas
</TD
></TR
><TR
><TD CLASS="arg"
>-&gt; <A HREF="Distribution-Compat-ReadP.html#t%3AReadP"
>ReadP</A
> r [a]</TD
><TD CLASS="rdoc"
></TD
></TR
></TABLE
></TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
><A NAME="v:parseCommaList"
><A NAME="v%3AparseCommaList"
></A
></A
><B
>parseCommaList</B
></TD
></TR
><TR
><TD CLASS="body"
><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"
><TR
><TD CLASS="arg"
>:: </TD
><TD CLASS="rdoc"
></TD
></TR
><TR
><TD CLASS="arg"
>=&gt; <A HREF="Distribution-Compat-ReadP.html#t%3AReadP"
>ReadP</A
> r a</TD
><TD CLASS="rdoc"
>The parser for the stuff between commas
</TD
></TR
><TR
><TD CLASS="arg"
>-&gt; <A HREF="Distribution-Compat-ReadP.html#t%3AReadP"
>ReadP</A
> r [a]</TD
><TD CLASS="rdoc"
></TD
></TR
></TABLE
></TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
><A NAME="v:parseOptCommaList"
><A NAME="v%3AparseOptCommaList"
></A
></A
><B
>parseOptCommaList</B
></TD
></TR
><TR
><TD CLASS="body"
><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"
><TR
><TD CLASS="arg"
>:: </TD
><TD CLASS="rdoc"
></TD
></TR
><TR
><TD CLASS="arg"
>=&gt; <A HREF="Distribution-Compat-ReadP.html#t%3AReadP"
>ReadP</A
> r a</TD
><TD CLASS="rdoc"
>The parser for the stuff between commas
</TD
></TR
><TR
><TD CLASS="arg"
>-&gt; <A HREF="Distribution-Compat-ReadP.html#t%3AReadP"
>ReadP</A
> r [a]</TD
><TD CLASS="rdoc"
></TD
></TR
></TABLE
></TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
><A NAME="v:showFilePath"
><A NAME="v%3AshowFilePath"
></A
></A
><B
>showFilePath</B
> :: <A HREF="../base/System-IO.html#t%3AFilePath"
>FilePath</A
> -&gt; <A HREF="../pretty/Text-PrettyPrint-HughesPJ.html#t%3ADoc"
>Doc</A
></TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
><A NAME="v:showToken"
><A NAME="v%3AshowToken"
></A
></A
><B
>showToken</B
> :: <A HREF="../base/Data-Char.html#t%3AString"
>String</A
> -&gt; <A HREF="../pretty/Text-PrettyPrint-HughesPJ.html#t%3ADoc"
>Doc</A
></TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
><A NAME="v:showTestedWith"
><A NAME="v%3AshowTestedWith"
></A
></A
><B
>showTestedWith</B
> :: (<A HREF="Distribution-Compiler.html#t%3ACompilerFlavor"
>CompilerFlavor</A
>, <A HREF="Distribution-Version.html#t%3AVersionRange"
>VersionRange</A
>) -&gt; <A HREF="../pretty/Text-PrettyPrint-HughesPJ.html#t%3ADoc"
>Doc</A
></TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
><A NAME="v:showFreeText"
><A NAME="v%3AshowFreeText"
></A
></A
><B
>showFreeText</B
> :: <A HREF="../base/Data-Char.html#t%3AString"
>String</A
> -&gt; <A HREF="../pretty/Text-PrettyPrint-HughesPJ.html#t%3ADoc"
>Doc</A
></TD
></TR
><TR
><TD CLASS="doc"
>Pretty-print free-format text, ensuring that it is vertically aligned,
 and with blank lines replaced by dots for correct re-parsing.
</TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
><A NAME="v:parseFreeText"
><A NAME="v%3AparseFreeText"
></A
></A
><B
>parseFreeText</B
> ::  <A HREF="Distribution-Compat-ReadP.html#t%3AReadP"
>ReadP</A
> s <A HREF="../base/Data-Char.html#t%3AString"
>String</A
></TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
><A NAME="v:field"
><A NAME="v%3Afield"
></A
></A
><B
>field</B
> ::  <A HREF="../base/Data-Char.html#t%3AString"
>String</A
> -&gt; (a -&gt; <A HREF="../pretty/Text-PrettyPrint-HughesPJ.html#t%3ADoc"
>Doc</A
>) -&gt; <A HREF="Distribution-Compat-ReadP.html#t%3AReadP"
>ReadP</A
> a a -&gt; <A HREF="Distribution-ParseUtils.html#t%3AFieldDescr"
>FieldDescr</A
> a</TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
><A NAME="v:simpleField"
><A NAME="v%3AsimpleField"
></A
></A
><B
>simpleField</B
> ::  <A HREF="../base/Data-Char.html#t%3AString"
>String</A
> -&gt; (a -&gt; <A HREF="../pretty/Text-PrettyPrint-HughesPJ.html#t%3ADoc"
>Doc</A
>) -&gt; <A HREF="Distribution-Compat-ReadP.html#t%3AReadP"
>ReadP</A
> a a -&gt; (b -&gt; a) -&gt; (a -&gt; b -&gt; b) -&gt; <A HREF="Distribution-ParseUtils.html#t%3AFieldDescr"
>FieldDescr</A
> b</TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
><A NAME="v:listField"
><A NAME="v%3AlistField"
></A
></A
><B
>listField</B
> ::  <A HREF="../base/Data-Char.html#t%3AString"
>String</A
> -&gt; (a -&gt; <A HREF="../pretty/Text-PrettyPrint-HughesPJ.html#t%3ADoc"
>Doc</A
>) -&gt; <A HREF="Distribution-Compat-ReadP.html#t%3AReadP"
>ReadP</A
> [a] a -&gt; (b -&gt; [a]) -&gt; ([a] -&gt; b -&gt; b) -&gt; <A HREF="Distribution-ParseUtils.html#t%3AFieldDescr"
>FieldDescr</A
> b</TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
><A NAME="v:spaceListField"
><A NAME="v%3AspaceListField"
></A
></A
><B
>spaceListField</B
> ::  <A HREF="../base/Data-Char.html#t%3AString"
>String</A
> -&gt; (a -&gt; <A HREF="../pretty/Text-PrettyPrint-HughesPJ.html#t%3ADoc"
>Doc</A
>) -&gt; <A HREF="Distribution-Compat-ReadP.html#t%3AReadP"
>ReadP</A
> [a] a -&gt; (b -&gt; [a]) -&gt; ([a] -&gt; b -&gt; b) -&gt; <A HREF="Distribution-ParseUtils.html#t%3AFieldDescr"
>FieldDescr</A
> b</TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
><A NAME="v:commaListField"
><A NAME="v%3AcommaListField"
></A
></A
><B
>commaListField</B
> ::  <A HREF="../base/Data-Char.html#t%3AString"
>String</A
> -&gt; (a -&gt; <A HREF="../pretty/Text-PrettyPrint-HughesPJ.html#t%3ADoc"
>Doc</A
>) -&gt; <A HREF="Distribution-Compat-ReadP.html#t%3AReadP"
>ReadP</A
> [a] a -&gt; (b -&gt; [a]) -&gt; ([a] -&gt; b -&gt; b) -&gt; <A HREF="Distribution-ParseUtils.html#t%3AFieldDescr"
>FieldDescr</A
> b</TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
><A NAME="v:optsField"
><A NAME="v%3AoptsField"
></A
></A
><B
>optsField</B
> ::  <A HREF="../base/Data-Char.html#t%3AString"
>String</A
> -&gt; <A HREF="Distribution-Compiler.html#t%3ACompilerFlavor"
>CompilerFlavor</A
> -&gt; (b -&gt; [(<A HREF="Distribution-Compiler.html#t%3ACompilerFlavor"
>CompilerFlavor</A
>, [<A HREF="../base/Data-Char.html#t%3AString"
>String</A
>])]) -&gt; ([(<A HREF="Distribution-Compiler.html#t%3ACompilerFlavor"
>CompilerFlavor</A
>, [<A HREF="../base/Data-Char.html#t%3AString"
>String</A
>])] -&gt; b -&gt; b) -&gt; <A HREF="Distribution-ParseUtils.html#t%3AFieldDescr"
>FieldDescr</A
> b</TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
><A NAME="v:liftField"
><A NAME="v%3AliftField"
></A
></A
><B
>liftField</B
> ::  (b -&gt; a) -&gt; (a -&gt; b -&gt; b) -&gt; <A HREF="Distribution-ParseUtils.html#t%3AFieldDescr"
>FieldDescr</A
> a -&gt; <A HREF="Distribution-ParseUtils.html#t%3AFieldDescr"
>FieldDescr</A
> b</TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
><A NAME="v:boolField"
><A NAME="v%3AboolField"
></A
></A
><B
>boolField</B
> ::  <A HREF="../base/Data-Char.html#t%3AString"
>String</A
> -&gt; (b -&gt; <A HREF="../ghc-prim/GHC-Bool.html#t%3ABool"
>Bool</A
>) -&gt; (<A HREF="../ghc-prim/GHC-Bool.html#t%3ABool"
>Bool</A
> -&gt; b -&gt; b) -&gt; <A HREF="Distribution-ParseUtils.html#t%3AFieldDescr"
>FieldDescr</A
> b</TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
><A NAME="v:parseQuoted"
><A NAME="v%3AparseQuoted"
></A
></A
><B
>parseQuoted</B
> ::  <A HREF="Distribution-Compat-ReadP.html#t%3AReadP"
>ReadP</A
> r a -&gt; <A HREF="Distribution-Compat-ReadP.html#t%3AReadP"
>ReadP</A
> r a</TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
><SPAN CLASS="keyword"
>type</SPAN
> <A NAME="t:UnrecFieldParser"
><A NAME="t%3AUnrecFieldParser"
></A
></A
><B
>UnrecFieldParser</B
> a = (<A HREF="../base/Data-Char.html#t%3AString"
>String</A
>, <A HREF="../base/Data-Char.html#t%3AString"
>String</A
>) -&gt; a -&gt; <A HREF="../base/Data-Maybe.html#t%3AMaybe"
>Maybe</A
> a</TD
></TR
><TR
><TD CLASS="doc"
>The type of a function which, given a name-value pair of an
   unrecognized field, and the current structure being built,
   decides whether to incorporate the unrecognized field
   (by returning  Just x, where x is a possibly modified version
   of the structure being built), or not (by returning Nothing).
</TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
><A NAME="v:warnUnrec"
><A NAME="v%3AwarnUnrec"
></A
></A
><B
>warnUnrec</B
> ::  <A HREF="Distribution-ParseUtils.html#t%3AUnrecFieldParser"
>UnrecFieldParser</A
> a</TD
></TR
><TR
><TD CLASS="doc"
>A default unrecognized field parser which simply returns Nothing,
   i.e. ignores all unrecognized fields, so warnings will be generated.
</TD
></TR
><TR
><TD CLASS="s15"
></TD
></TR
><TR
><TD CLASS="decl"
><A NAME="v:ignoreUnrec"
><A NAME="v%3AignoreUnrec"
></A
></A
><B
>ignoreUnrec</B
> ::  <A HREF="Distribution-ParseUtils.html#t%3AUnrecFieldParser"
>UnrecFieldParser</A
> a</TD
></TR
><TR
><TD CLASS="doc"
>A default unrecognized field parser which silently (i.e. no
   warnings will be generated) ignores unrecognized fields, by
   returning the structure being built unmodified.
</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.4.2</TD
></TR
></TABLE
></BODY
></HTML
>