/chevrotain-allstar

Plugin module for the ALL(*) lookahead algorithm in Chevrotain

Primary LanguageTypeScriptMIT LicenseMIT

Chevrotain Allstar

This is a lookahead plugin package for the Chevrotain parser library. It implements the ALL(*) lookahead algorithm introduced for ANTLR4. The algorithm features unbounded lookahead, compared to the normal LL(k) behavior of Chevrotain.

Usage

When creating your parser, pass an instance of the LLStarLookaheadStrategy to the lookaheadStrategy property of the base parser constructor options.

import { LLStarLookaheadStrategy } from "chevrotain-allstar";

class Parser extends EmbeddedActionsParser {
    constructor() {
        super(tokens, {
            lookaheadStrategy: new LLStarLookaheadStrategy()
        });
        this.performSelfAnalysis()
    }
}