    -- | Utilities to work with @.cabal@ like file structure.
    module Distribution.Fields
      ( -- * Types
        Field (..)
      , Name (..)
      , FieldLine (..)
      , SectionArg (..)
      , FieldName

        -- * Grammar and parsing

      --
      -- See "Distribution.Fields.Parser" for grammar.
      , readFields
      , readFields'

        -- ** ParseResult
      , ParseResult
      , runParseResult
      , parseWarning
      , parseWarnings
      , parseFailure
      , parseFatalFailure

        -- ** Warnings
      , PWarnType (..)
      , PWarning (..)
      , showPWarning

        -- ** Errors
      , PError (..)
      , showPError

        -- * Pretty printing
      , CommentPosition (..)
      , PrettyField (..)
      , showFields

        -- ** Transformation from Field
      , genericFromParsecFields
      , fromParsecFields
      ) where

    import Distribution.Fields.Field
    import Distribution.Fields.ParseResult
    import Distribution.Fields.Parser
    import Distribution.Fields.Pretty
    import Distribution.Parsec.Error
    import Distribution.Parsec.Warning