FParsec-Pipes

A library for building FParsec parsers using pipeline operators.


Keywords
c#, combinator, csharp, f#, fparsec, fsharp, parsec, parser, pipe, pipes, compiler-abuse, parsing
License
MIT
Install
Install-Package FParsec-Pipes -Version 1.1.2

Documentation

FParsec-Pipes

This library is an extension to the FParsec library (http://www.quanttec.com/fparsec/).

Please see the project page or read the intro.

FParsec-Pipes does not define new parsers. Instead, its goal is to make it easier and more readable to define your own parsers.

Why should I care? Show me some code I can write with this.

let pdatetime =
    let digits (count : int) = %% +.(qty.[count] * digit) -|> (String >> Int32.Parse)
    %% +.digits 4 -- '-' -- +.digits 2 -- '-' -- +.digits 2 -- 'T'
    -- +.digits 2 -- ':' -- +.digits 2 -- ':' -- +.digits 2
    -|> fun yyyy mm dd h m s ->
        new DateTime(yyyy, mm, dd, h, m, s)