Copyright | (c) Daan Leijen 1999-2001 |
---|---|
License | BSD-style (see the file libraries/parsec/LICENSE) |
Maintainer | daan@cs.uu.nl |
Stability | provisional |
Portability | non-portable (uses existentially quantified data constructors) |
Safe Haskell | Safe-Inferred |
Language | Haskell98 |
This module implements permutation parsers. The algorithm used is fairly complex since we push the type system to its limits :-) The algorithm is described in:
Parsing Permutation Phrases, by Arthur Baars, Andres Loh and Doaitse Swierstra. Published as a functional pearl at the Haskell Workshop 2001.
Documentation
data PermParser tok st a Source
permute :: PermParser tok st a -> GenParser tok st a Source
(<||>) :: PermParser tok st (a -> b) -> GenParser tok st a -> PermParser tok st b infixl 1 Source
(<$$>) :: (a -> b) -> GenParser tok st a -> PermParser tok st b infixl 2 Source
(<|?>) :: PermParser tok st (a -> b) -> (a, GenParser tok st a) -> PermParser tok st b infixl 1 Source
(<$?>) :: (a -> b) -> (a, GenParser tok st a) -> PermParser tok st b infixl 2 Source