pegisland
Version:
General PEG-based parser supporting island grammars with lake symbols
34 lines • 1.85 kB
TypeScript
import { Nonterminal, Terminal, ZeroOrMore, OneOrMore, Optional, Not, Sequence, OrderedChoice, Grouping, Rewriting, Colon, ColonNot, Lake, And } from './ParsingExpression';
export interface IParsingExpressionVisitor<ArgsType extends Array<unknown> = [], ReturnType = void> {
visitNonterminal(pe: Nonterminal, ...arg: ArgsType): ReturnType;
visitTerminal(pe: Terminal, ...arg: ArgsType): ReturnType;
visitZeroOrMore(pe: ZeroOrMore, ...arg: ArgsType): ReturnType;
visitOneOrMore(pe: OneOrMore, ...arg: ArgsType): ReturnType;
visitOptional(pe: Optional, ...arg: ArgsType): ReturnType;
visitAnd(pe: Not, ...arg: ArgsType): ReturnType;
visitNot(pe: Not, ...arg: ArgsType): ReturnType;
visitSequence(pe: Sequence, ...arg: ArgsType): ReturnType;
visitOrderedChoice(pe: OrderedChoice, ...arg: ArgsType): ReturnType;
visitGrouping(pe: Grouping, ...arg: ArgsType): ReturnType;
visitRewriting(pe: Rewriting, ...arg: ArgsType): ReturnType;
visitColon(pe: Colon, ...arg: ArgsType): ReturnType;
visitColonNot(pe: ColonNot, ...arg: ArgsType): ReturnType;
visitLake(pe: Lake, ...arg: ArgsType): ReturnType;
}
export declare class DefaultParsingExpressionVisitor implements IParsingExpressionVisitor {
visitNonterminal(_pe: Nonterminal): void;
visitTerminal(_pe: Terminal): void;
visitOrderedChoice(_pe: OrderedChoice): void;
visitSequence(_pe: Sequence): void;
visitAnd(_pe: And): void;
visitColon(_pe: Colon): void;
visitColonNot(_pe: ColonNot): void;
visitGrouping(_pe: Grouping): void;
visitLake(_pe: Lake): void;
visitNot(_pe: Not): void;
visitOneOrMore(_pe: OneOrMore): void;
visitOptional(_pe: Optional): void;
visitRewriting(_pe: Rewriting): void;
visitZeroOrMore(_pe: ZeroOrMore): void;
}
//# sourceMappingURL=IParsingExpressionVisitor.d.ts.map