phaser: Incremental multiple pass parser library.

[ bsd3, library, text ] [ Propose Tags ] [ Report a vulnerability ]

A combinator library for incremental multiple pass parsers. Mostly inspired by the Text.ParserCombinators.ReadP module in the Base package and the conduit package. It has similar capabilities to ReadP as well as more detailed error reporting and the capacity for multiple passes (such as lexing and parsing)


[Skip to Readme]

Downloads

Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees

Candidates

Versions [RSS] 0.1.0.0, 0.1.1.0, 0.2.0.0, 1.0.0.0, 1.0.0.1, 1.0.1.0, 1.0.2.0
Dependencies base (>=4.9 && <5), bytestring (>=0.10 && <0.13), containers (>=0.6.7 && <0.7), text (>=1.2 && <2.1) [details]
License BSD-3-Clause
Author Jeremy List
Maintainer quick.dudley@gmail.com
Category Text
Home page https://gitlab.com/quickdudley/phaser
Source repo head: git clone https://gitlab.com/quickdudley/phaser.git
Uploaded by quick_dudley at 2024-08-25T22:50:54Z
Distributions
Reverse Dependencies 1 direct, 0 indirect [details]
Downloads 3890 total (19 in the last 30 days)
Rating (no votes yet) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Docs available [build log]
Last success reported on 2024-08-25 [all 1 reports]

Readme for phaser-1.0.2.0

[back to package description]

phaser

A combinator library for incremental multiple pass parsers.

This library is inspired by the Text.ParserCombinators.ReadP module which is part of the base package of the Haskell platform, and also by the conduit library. Except for readS_to_p: most of the functionality of ReadP is possible (although fewer convenience functions are currently implemented as of version 0.1.0.0).

Parsers can also be chained à la conduit.

Finally: this library supports detailed error reporting including the position in the file where the parser failed.