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, visitWhileStatementMethods inherited from class org.antlr.v4.runtime.tree.AbstractParseTreeVisitor
aggregateResult, defaultResult, shouldVisitNextChild, visit, visitChildren, visitErrorNode, visitTerminalMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods 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:
visitExpressionin interfaceBSLParserVisitor<ParseTree>- Overrides:
visitExpressionin classBSLParserBaseVisitor<ParseTree>- Parameters:
ctx- выражение для создания дерева- Returns:
- ParseTree стандартного интерфейса antlr4
-
visitMember
- Specified by:
visitMemberin interfaceBSLParserVisitor<ParseTree>- Overrides:
visitMemberin classBSLParserBaseVisitor<ParseTree>
-
visitOperation
- Specified by:
visitOperationin interfaceBSLParserVisitor<ParseTree>- Overrides:
visitOperationin classBSLParserBaseVisitor<ParseTree>
-
visitConstValue
- Specified by:
visitConstValuein interfaceBSLParserVisitor<ParseTree>- Overrides:
visitConstValuein classBSLParserBaseVisitor<ParseTree>
-
visitUnaryModifier
- Specified by:
visitUnaryModifierin interfaceBSLParserVisitor<ParseTree>- Overrides:
visitUnaryModifierin classBSLParserBaseVisitor<ParseTree>
-
visitComplexIdentifier
- Specified by:
visitComplexIdentifierin interfaceBSLParserVisitor<ParseTree>- Overrides:
visitComplexIdentifierin classBSLParserBaseVisitor<ParseTree>
-
visitGlobalMethodCall
- Specified by:
visitGlobalMethodCallin interfaceBSLParserVisitor<ParseTree>- Overrides:
visitGlobalMethodCallin classBSLParserBaseVisitor<ParseTree>
-
visitNewExpression
- Specified by:
visitNewExpressionin interfaceBSLParserVisitor<ParseTree>- Overrides:
visitNewExpressionin classBSLParserBaseVisitor<ParseTree>
-
visitAccessProperty
- Specified by:
visitAccessPropertyin interfaceBSLParserVisitor<ParseTree>- Overrides:
visitAccessPropertyin classBSLParserBaseVisitor<ParseTree>
-
visitAccessIndex
- Specified by:
visitAccessIndexin interfaceBSLParserVisitor<ParseTree>- Overrides:
visitAccessIndexin classBSLParserBaseVisitor<ParseTree>
-
visitAccessCall
- Specified by:
visitAccessCallin interfaceBSLParserVisitor<ParseTree>- Overrides:
visitAccessCallin classBSLParserBaseVisitor<ParseTree>
-
visitTernaryOperator
- Specified by:
visitTernaryOperatorin interfaceBSLParserVisitor<ParseTree>- Overrides:
visitTernaryOperatorin classBSLParserBaseVisitor<ParseTree>
-