Class ExpressionTreeBuildingVisitor
java.lang.Object
org.antlr.v4.runtime.tree.AbstractParseTreeVisitor<Result>
com.github._1c_syntax.bsl.parser.BSLParserBaseVisitor<ParseTree>
com.github._1c_syntax.bsl.languageserver.utils.expressiontree.ExpressionTreeBuildingVisitor
- All Implemented Interfaces:
BSLParserVisitor<ParseTree>
,ParseTreeVisitor<ParseTree>
Посетитель AST, который находит выражения и преобразует их в Expression Tree
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic BslExpression
Хелпер построения дерева выражения на основе готового AST выраженияMethods inherited from class com.github._1c_syntax.bsl.parser.BSLParserBaseVisitor
visitAcceptor, visitAddHandlerStatement, visitAnnotation, visitAnnotationName, visitAnnotationParam, visitAnnotationParamName, visitAnnotationParams, visitAssignment, visitBoolOperation, visitBreakStatement, visitCallParam, visitCallParamList, visitCallStatement, visitCodeBlock, visitCompareOperation, visitCompilerDirective, visitCompilerDirectiveSymbol, visitCompoundStatement, visitContinueStatement, visitDefaultValue, visitDoCall, visitElseBranch, visitElsifBranch, visitEvent, visitExceptCodeBlock, visitExecuteStatement, visitFile, visitFileCodeBlock, visitFileCodeBlockBeforeSub, visitForEachStatement, visitForStatement, visitFuncDeclaration, visitFunction, visitGotoStatement, visitHandler, visitIfBranch, visitIfStatement, visitLabel, visitLabelName, visitLValue, visitMethodCall, visitMethodName, visitModifier, visitModuleAnnotations, visitModuleVar, visitModuleVarDeclaration, visitModuleVars, visitModuleVarsList, visitMultilineString, visitNumeric, visitParam, visitParamList, visitPreproc_boolOperation, visitPreproc_else, visitPreproc_elsif, visitPreproc_endif, visitPreproc_expression, visitPreproc_if, visitPreproc_logicalExpression, visitPreproc_logicalOperand, visitPreproc_native, visitPreproc_symbol, visitPreproc_unknownSymbol, visitPreprocessor, visitProcDeclaration, visitProcedure, visitRaiseStatement, visitRegionEnd, visitRegionName, visitRegionStart, visitRemoveHandlerStatement, visitReturnStatement, visitShebang, visitStatement, visitString, visitSub, visitSubCodeBlock, visitSubName, visitSubs, visitSubVar, visitSubVarDeclaration, visitSubVars, visitSubVarsList, visitTryCodeBlock, visitTryStatement, visitTypeName, visitUse, visitUsedLib, visitVar_name, visitWaitExpression, visitWaitStatement, visitWhileStatement
Methods inherited from class org.antlr.v4.runtime.tree.AbstractParseTreeVisitor
aggregateResult, defaultResult, shouldVisitNextChild, visit, visitChildren, visitErrorNode, visitTerminal
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface org.antlr.v4.runtime.tree.ParseTreeVisitor
visit, visitChildren, visitErrorNode, visitTerminal
-
Constructor Details
-
ExpressionTreeBuildingVisitor
public ExpressionTreeBuildingVisitor()
-
-
Method Details
-
buildExpressionTree
Хелпер построения дерева выражения на основе готового AST выражения- Parameters:
ctx
- AST выражения- Returns:
- дерево вычисления выражения
-
getExpressionTree
- Returns:
- результирующее выражение в виде дерева вычисления операций
-
visitExpression
- Specified by:
visitExpression
in interfaceBSLParserVisitor<ParseTree>
- Overrides:
visitExpression
in classBSLParserBaseVisitor<ParseTree>
- Parameters:
ctx
- выражение для создания дерева- Returns:
- ParseTree стандартного интерфейса antlr4
-
visitMember
- Specified by:
visitMember
in interfaceBSLParserVisitor<ParseTree>
- Overrides:
visitMember
in classBSLParserBaseVisitor<ParseTree>
-
visitOperation
- Specified by:
visitOperation
in interfaceBSLParserVisitor<ParseTree>
- Overrides:
visitOperation
in classBSLParserBaseVisitor<ParseTree>
-
visitConstValue
- Specified by:
visitConstValue
in interfaceBSLParserVisitor<ParseTree>
- Overrides:
visitConstValue
in classBSLParserBaseVisitor<ParseTree>
-
visitUnaryModifier
- Specified by:
visitUnaryModifier
in interfaceBSLParserVisitor<ParseTree>
- Overrides:
visitUnaryModifier
in classBSLParserBaseVisitor<ParseTree>
-
visitComplexIdentifier
- Specified by:
visitComplexIdentifier
in interfaceBSLParserVisitor<ParseTree>
- Overrides:
visitComplexIdentifier
in classBSLParserBaseVisitor<ParseTree>
-
visitGlobalMethodCall
- Specified by:
visitGlobalMethodCall
in interfaceBSLParserVisitor<ParseTree>
- Overrides:
visitGlobalMethodCall
in classBSLParserBaseVisitor<ParseTree>
-
visitNewExpression
- Specified by:
visitNewExpression
in interfaceBSLParserVisitor<ParseTree>
- Overrides:
visitNewExpression
in classBSLParserBaseVisitor<ParseTree>
-
visitAccessProperty
- Specified by:
visitAccessProperty
in interfaceBSLParserVisitor<ParseTree>
- Overrides:
visitAccessProperty
in classBSLParserBaseVisitor<ParseTree>
-
visitAccessIndex
- Specified by:
visitAccessIndex
in interfaceBSLParserVisitor<ParseTree>
- Overrides:
visitAccessIndex
in classBSLParserBaseVisitor<ParseTree>
-
visitAccessCall
- Specified by:
visitAccessCall
in interfaceBSLParserVisitor<ParseTree>
- Overrides:
visitAccessCall
in classBSLParserBaseVisitor<ParseTree>
-
visitTernaryOperator
- Specified by:
visitTernaryOperator
in interfaceBSLParserVisitor<ParseTree>
- Overrides:
visitTernaryOperator
in classBSLParserBaseVisitor<ParseTree>
-