@light0x00/parser-generator
Version:
A Parser Generator
14 lines (13 loc) • 557 B
TypeScript
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>>;
}