memoise: Memoisation of a parser

Description Usage Arguments Examples

Description

This is used to tackle (infinite) left recursion in parsing, and it is done by memoising the input so that if the input is called twice with the same parser without evaluation, then an infinite recursion is registered.

Usage

1

Arguments

p

A parser.

Examples

1
2
3
4
5
6
7
8
9
## Not run: 
term_s <- literal("s")
term_s("s")
sum_s <- (sum_s %then% sum_s) %|% term_s
sum_s("ss")   # error: infinite left recursion
msum_s <- memoise(msum_s %then% msum_s) %|% term_s
msum_s("ss")

## End(Not run)

kcf-jackson/combinatorParser documentation built on May 17, 2019, 4:22 a.m.