UNPKG

@light0x00/parser-generator

Version:

A Parser Generator

14 lines (13 loc) 557 B
import { Terminal, Production, NonTerminal, Symbol, IGrammar } from "@/Definition"; export declare type FirstMap = Map<Terminal, Production>; export declare type FirstSet = Set<Terminal>; export declare type FirstTable = Map<string, Map<Terminal, Production>>; export declare class FirstSetCalculator { private cache; private ciclicDector; private grammar; constructor(grammar: IGrammar); getFirstSet(target: Symbol): FirstSet; getFirstMap(target: NonTerminal): FirstMap; getFirstTable(): Map<string, Map<Object, Production>>; }