simc-ast-builder
Version:
Parser and AST generator for SimulationCraft files
109 lines • 3.92 kB
TypeScript
import { AbstractParseTreeVisitor } from "antlr4ts/tree/AbstractParseTreeVisitor";
import { ParseTree } from "antlr4ts/tree/ParseTree";
import { AccessExprContext, ActionLineContext, ActionNameContext, ActionParamContext, AdditiveExprContext, AndExprContext, AnyTokenExprContext, CommentLineContext, ComparisonExprContext, ExpressionContext, IdentifierContext, MathFuncExprContext, MinMaxExprContext, MixedIdExprContext, MultiplicativeExprContext, NumberExprContext, OrExprContext, ParenExprContext, ParseContext, StringExprContext, SublistNameContext, UnaryExprContext, XorExprContext } from "../../antlr4/SimCExprParser";
import { SimCExprVisitor } from "../../antlr4/SimCExprVisitor";
import { ActionLineNode, ASTNode, CommentLineNode, ExpressionNode, ParameterNode } from "./common-types";
/**
* Generic visitor that implements the ANTLR visitor pattern
*/
export declare class SimCGenericVisitor extends AbstractParseTreeVisitor<ASTNode> implements SimCExprVisitor<ASTNode> {
constructor();
/**
* Generic visit method for any context
*/
visit(tree: ParseTree): ASTNode;
/**
* Visit an access expression context
*/
visitAccessExpr(ctx: AccessExprContext): ExpressionNode;
/**
* Visit an action line context
*/
visitActionLine(ctx: ActionLineContext): ActionLineNode;
/**
* Visit an action name context
*/
visitActionName(ctx: ActionNameContext): ExpressionNode;
/**
* Visit an action parameter context
*/
visitActionParam(ctx: ActionParamContext): ParameterNode;
/**
* Visit an additive expression context (+ -)
*/
visitAdditiveExpr(ctx: AdditiveExprContext): ExpressionNode;
/**
* Visit an AND expression context
*/
visitAndExpr(ctx: AndExprContext): ExpressionNode;
/**
* Visit an any token expression context
*/
visitAnyTokenExpr(ctx: AnyTokenExprContext): ExpressionNode;
/**
* Visit a comment line context
*/
visitCommentLine(ctx: CommentLineContext): CommentLineNode;
/**
* Visit a comparison expression context
*/
visitComparisonExpr(ctx: ComparisonExprContext): ExpressionNode;
/**
* Visit an expression context
*/
visitExpression(ctx: ExpressionContext): ASTNode;
/**
* Visit a string expression context
*/
/**
* Visit an identifier context
*/
visitIdentifier(ctx: IdentifierContext): ExpressionNode;
/**
* Visit a math function expression context (ceil or floor)
*/
visitMathFuncExpr(ctx: MathFuncExprContext): ExpressionNode;
/**
* Visit a min/max expression context
*/
visitMinMaxExpr(ctx: MinMaxExprContext): ExpressionNode;
/**
* Visit a mixed ID expression context
*/
visitMixedIdExpr(ctx: MixedIdExprContext): ExpressionNode;
/**
* Visit a multiplicative expression context (* % %%)
*/
visitMultiplicativeExpr(ctx: MultiplicativeExprContext): ExpressionNode;
/**
* Visit a number expression context
*/
visitNumberExpr(ctx: NumberExprContext): ExpressionNode;
/**
* Visit an OR expression context
*/
visitOrExpr(ctx: OrExprContext): ExpressionNode;
/**
* Visit a parenthesized expression context
*/
visitParenExpr(ctx: ParenExprContext): ExpressionNode;
/**
* Visit a parse context
*/
visitParse(ctx: ParseContext): ASTNode;
visitStringExpr(ctx: StringExprContext): ExpressionNode;
/**
* Visit a sublist name context
*/
visitSublistName(ctx: SublistNameContext): ExpressionNode;
/**
* Visit a unary expression context (+ - ! @)
*/
visitUnaryExpr(ctx: UnaryExprContext): ExpressionNode;
/**
* Visit a XOR expression context
*/
visitXorExpr(ctx: XorExprContext): ExpressionNode;
protected defaultResult(): ASTNode;
}
//# sourceMappingURL=SimCGenericVisitor.d.ts.map