Class IdenticalExpressionsDiagnostic

All Implemented Interfaces:
BSLDiagnostic

@DiagnosticMetadata(type=ERROR, severity=MAJOR, minutesToFix=5, tags=SUSPICIOUS) public class IdenticalExpressionsDiagnostic extends AbstractExpressionTreeDiagnostic
  • Constructor Details

  • Method Details

    • configure

      public void configure(Map<String,Object> configuration)
    • onExpressionEnter

      Description copied from class: AbstractExpressionTreeDiagnostic
      При входе в выражение вызывается данный метод. Переопределяя его можно оценить - имеет ли смысл строить дерево выражения, или данное выражение не подходит. Позволяет сократить время на построение дерева, если это не требуется для данного AST.
      Overrides:
      onExpressionEnter in class AbstractExpressionTreeDiagnostic
      Parameters:
      ctx - - выражение, которое в данный момент посещается.
      Returns:
      - флаг дальнейшего поведения. - если надо прекратить обход в глубину и построить Expression Tree на данном выражении - надо вернуть ACCEPT - если надо пройти дальше и посетить дочерние выражения, не затрагивая данное - надо вернуть VISIT_CHILDREN - если надо пропустить выражение, не ходить глубже и не строить Expression Tree - надо вернуть SKIP
    • visitTopLevelExpression

      protected void visitTopLevelExpression(BslExpression node)
      Overrides:
      visitTopLevelExpression in class ExpressionTreeVisitor
    • visitBinaryOperation

      protected void visitBinaryOperation(BinaryOperationNode node)
      Overrides:
      visitBinaryOperation in class ExpressionTreeVisitor