parsec1-1.0.0.8: Portable monadic parser combinators
Copyright(c) Daan Leijen 1999-2001
LicenseBSD-style (see the file libraries/parsec/LICENSE)
MaintainerChristian Maeder <chr.maeder@web.de>
Stabilityprovisional
Portabilityportable
Safe HaskellSafe-Inferred
LanguageHaskell98

Text.ParserCombinators.Parsec

Description

Parsec, the Fast Monadic Parser combinator library.

Inspired by:

Graham Hutton and Erik Meijer: Monadic Parser Combinators. Technical report NOTTCS-TR-96-4. Department of Computer Science, University of Nottingham, 1996. https://www.cs.nott.ac.uk/~gmh/monparsing.ps

Andrew Partridge, David Wright: Predictive parser combinators need four values to report errors. Journal of Functional Programming 6(2): 355-364, 1996

This helper module exports elements from the basic libraries.

Synopsis

Documentation

data ParseError Source #

The abstract data type ParseError represents parse errors. It provides the source position (SourcePos) of the error and a list of error messages (Message). A ParseError can be returned by the function parse. ParseError is an instance of the Show class.

Instances

Instances details
Eq ParseError Source # 
Instance details

Defined in Text.ParserCombinators.Parsec.Error

Show ParseError Source # 
Instance details

Defined in Text.ParserCombinators.Parsec.Error

errorPos :: ParseError -> SourcePos Source #

Extracts the source position from the parse error

type Line = Int Source #

data SourcePos Source #

The abstract data type SourcePos represents source positions. It contains the name of the source (i.e. file name), a line number and a column number. SourcePos is an instance of the Show, Eq and Ord class.

incSourceColumn :: SourcePos -> Column -> SourcePos Source #

Increments the column number of a source position.

incSourceLine :: SourcePos -> Line -> SourcePos Source #

Increments the line number of a source position.

setSourceColumn :: SourcePos -> Column -> SourcePos Source #

Set the column number of a source position.

setSourceLine :: SourcePos -> Line -> SourcePos Source #

Set the line number of a source position.

setSourceName :: SourcePos -> SourceName -> SourcePos Source #

Set the name of the source.

sourceColumn :: SourcePos -> Column Source #

the column number from a source position

sourceLine :: SourcePos -> Line Source #

the line number from a source position

sourceName :: SourcePos -> SourceName Source #

the name of the source from a position