incremental-parser-0.3.1.1: Generic parser library capable of providing partial results from partial input.

Text.ParserCombinators.Incremental.LeftBiasedLocal

Description

This module defines parsing combinators for incremental parsers with left-biased local choice.

The exported Parser type can provide partial parsing results from partial input, as long as the output is a Monoid. Construct a parser using the primitives and combinators, supply it with input using functions feed and feedEof, and extract the parsed output using results.

Implementation is based on Brzozowski derivatives.

Synopsis

# Documentation

An empty type to specialize Parser for the left-biased Alternative instance.

Instances

 Source # Left-biased choice. The right parser is used only if the left one utterly fails. Methodssome :: Parser LeftBiasedLocal s a -> Parser LeftBiasedLocal s [a] #many :: Parser LeftBiasedLocal s a -> Parser LeftBiasedLocal s [a] # Source # The MonadPlus instances are the same as the Alternative instances. Methods

leftmost :: Parser s r -> Parser a s r Source #