ifc-expressions
Version:
Parsing and evaluation of IFC expressions
43 lines (42 loc) • 2.81 kB
TypeScript
import IfcExpressionListener from "../gen/parser/IfcExpressionListener.js";
import { ArrayElementListContext, ArrayExprContext, BooleanLiteralContext, ExprContext, ExprListContext, FunctionCallContext, LiteralContext, LogicalLiteralContext, MethodCallChainEndContext, MethodCallChainInnerContext, NumLiteralContext, SEAddSubContext, SEArrayExprContext, SEBooleanBinaryOpContext, SEComparisonContext, SEFunctionCallContext, SELiteralContext, SEMethodCallContext, SEMulDivContext, SENotContext, SEParenthesisContext, SEPowerContext, SEUnaryMinusContext, SEUnaryMultipleMinusContext, SEVariableRefContext, StringLiteralContext, VariableRefContext } from "../gen/parser/IfcExpressionParser.js";
import { TypeManager } from "./TypeManager.js";
export declare class IfcExpressionValidationListener extends IfcExpressionListener {
private readonly typeManager;
private methodCallTargetStack;
constructor();
getTypeManager(): TypeManager;
enterFunctionCall: (ctx: FunctionCallContext) => void;
enterSEUnaryMultipleMinus: (ctx: SEUnaryMultipleMinusContext) => void;
exitSEBooleanBinaryOp: (ctx: SEBooleanBinaryOpContext) => void;
exitSEComparison: (ctx: SEComparisonContext) => void;
exitSEParenthesis: (ctx: SEParenthesisContext) => void;
exitSELiteral: (ctx: SELiteralContext) => void;
exitLiteral: (ctx: LiteralContext) => void;
exitNumLiteral: (ctx: NumLiteralContext) => void;
exitStringLiteral: (ctx: StringLiteralContext) => void;
exitBooleanLiteral: (ctx: BooleanLiteralContext) => void;
exitLogicalLiteral: (ctx: LogicalLiteralContext) => void;
exitExpr: (ctx: ExprContext) => void;
exitSEMulDiv: (ctx: SEMulDivContext) => void;
exitSEPower: (ctx: SEPowerContext) => void;
exitSEFunctionCall: (ctx: SEFunctionCallContext) => void;
exitSEArrayExpr: (ctx: SEArrayExprContext) => void;
exitSENot: (ctx: SENotContext) => void;
exitSEVariableRef: (ctx: SEVariableRefContext) => void;
exitSEUnaryMinus: (ctx: SEUnaryMinusContext) => void;
exitSEAddSub: (ctx: SEAddSubContext) => void;
exitSEMethodCall: (ctx: SEMethodCallContext) => void;
enterMethodCallChainInner: (ctx: MethodCallChainInnerContext) => void;
exitMethodCallChainInner: (ctx: MethodCallChainInnerContext) => void;
enterMethodCallChainEnd: (ctx: MethodCallChainEndContext) => void;
private pushMethodCallTarget;
exitMethodCallChainEnd: (ctx: MethodCallChainEndContext) => void;
exitFunctionCall: (ctx: FunctionCallContext) => void;
private collectArgumentTypes;
exitExprList: (ctx: ExprListContext) => void;
exitArrayExpr: (ctx: ArrayExprContext) => void;
private collectArrayElementTypes;
exitArrayElementList: (ctx: ArrayElementListContext) => void;
exitVariableRef: (ctx: VariableRefContext) => void;
}