Remove Expr.visit. (#10437)

* Remove Expr.visit.

It isn't used and doesn't have tests.

* Remove Visitor too.
diff --git a/core/src/main/java/org/apache/druid/math/expr/BinaryOperatorExpr.java b/core/src/main/java/org/apache/druid/math/expr/BinaryOperatorExpr.java
index 9db527b..128a780 100644
--- a/core/src/main/java/org/apache/druid/math/expr/BinaryOperatorExpr.java
+++ b/core/src/main/java/org/apache/druid/math/expr/BinaryOperatorExpr.java
@@ -47,14 +47,6 @@
   }
 
   @Override
-  public void visit(Visitor visitor)
-  {
-    left.visit(visitor);
-    right.visit(visitor);
-    visitor.visit(this);
-  }
-
-  @Override
   public Expr visit(Shuttle shuttle)
   {
     Expr newLeft = left.visit(shuttle);
diff --git a/core/src/main/java/org/apache/druid/math/expr/ConstantExpr.java b/core/src/main/java/org/apache/druid/math/expr/ConstantExpr.java
index d9075f8..279600d 100644
--- a/core/src/main/java/org/apache/druid/math/expr/ConstantExpr.java
+++ b/core/src/main/java/org/apache/druid/math/expr/ConstantExpr.java
@@ -58,12 +58,6 @@
   }
 
   @Override
-  public void visit(Visitor visitor)
-  {
-    visitor.visit(this);
-  }
-
-  @Override
   public Expr visit(Shuttle shuttle)
   {
     return shuttle.visit(this);
diff --git a/core/src/main/java/org/apache/druid/math/expr/Expr.java b/core/src/main/java/org/apache/druid/math/expr/Expr.java
index b8fa44f..be0a32e 100644
--- a/core/src/main/java/org/apache/druid/math/expr/Expr.java
+++ b/core/src/main/java/org/apache/druid/math/expr/Expr.java
@@ -113,12 +113,6 @@
   String stringify();
 
   /**
-   * Programmatically inspect the {@link Expr} tree with a {@link Visitor}. Each {@link Expr} is responsible for
-   * ensuring the {@link Visitor} can visit all of its {@link Expr} children before visiting itself
-   */
-  void visit(Visitor visitor);
-
-  /**
    * Programatically rewrite the {@link Expr} tree with a {@link Shuttle}. Each {@link Expr} is responsible for
    * ensuring the {@link Shuttle} can visit all of its {@link Expr} children, as well as updating its children
    * {@link Expr} with the results from the {@link Shuttle}, before finally visiting an updated form of itself.
@@ -252,7 +246,9 @@
     <T> T[] getObjectVector(String name);
 
     long[] getLongVector(String name);
+
     double[] getDoubleVector(String name);
+
     @Nullable
     boolean[] getNullVector(String name);
 
@@ -260,18 +256,6 @@
   }
 
   /**
-   * Mechanism to inspect an {@link Expr}, implementing a {@link Visitor} allows visiting all children of an
-   * {@link Expr}
-   */
-  interface Visitor
-  {
-    /**
-     * Provide the {@link Visitor} with an {@link Expr} to inspect
-     */
-    void visit(Expr expr);
-  }
-
-  /**
    * Mechanism to rewrite an {@link Expr}, implementing a {@link Shuttle} allows visiting all children of an
    * {@link Expr}, and replacing them as desired.
    */
diff --git a/core/src/main/java/org/apache/druid/math/expr/ExprMacroTable.java b/core/src/main/java/org/apache/druid/math/expr/ExprMacroTable.java
index 616297a..8ff0d3d 100644
--- a/core/src/main/java/org/apache/druid/math/expr/ExprMacroTable.java
+++ b/core/src/main/java/org/apache/druid/math/expr/ExprMacroTable.java
@@ -112,13 +112,6 @@
     }
 
     @Override
-    public void visit(final Visitor visitor)
-    {
-      arg.visit(visitor);
-      visitor.visit(this);
-    }
-
-    @Override
     public BindingAnalysis analyzeInputs()
     {
       return analyzeInputsSupplier.get();
@@ -185,15 +178,6 @@
     }
 
     @Override
-    public void visit(final Visitor visitor)
-    {
-      for (Expr arg : args) {
-        arg.visit(visitor);
-      }
-      visitor.visit(this);
-    }
-
-    @Override
     public BindingAnalysis analyzeInputs()
     {
       return analyzeInputsSupplier.get();
diff --git a/core/src/main/java/org/apache/druid/math/expr/FunctionalExpr.java b/core/src/main/java/org/apache/druid/math/expr/FunctionalExpr.java
index 80bc1e7..df4de19 100644
--- a/core/src/main/java/org/apache/druid/math/expr/FunctionalExpr.java
+++ b/core/src/main/java/org/apache/druid/math/expr/FunctionalExpr.java
@@ -102,13 +102,6 @@
   }
 
   @Override
-  public void visit(Visitor visitor)
-  {
-    expr.visit(visitor);
-    visitor.visit(this);
-  }
-
-  @Override
   public Expr visit(Shuttle shuttle)
   {
     List<IdentifierExpr> newArgs =
@@ -202,15 +195,6 @@
   }
 
   @Override
-  public void visit(Visitor visitor)
-  {
-    for (Expr child : args) {
-      child.visit(visitor);
-    }
-    visitor.visit(this);
-  }
-
-  @Override
   public Expr visit(Shuttle shuttle)
   {
     List<Expr> newArgs = args.stream().map(shuttle::visit).collect(Collectors.toList());
@@ -339,16 +323,6 @@
   }
 
   @Override
-  public void visit(Visitor visitor)
-  {
-    lambdaExpr.visit(visitor);
-    for (Expr arg : argsExpr) {
-      arg.visit(visitor);
-    }
-    visitor.visit(this);
-  }
-
-  @Override
   public Expr visit(Shuttle shuttle)
   {
     LambdaExpr newLambda = (LambdaExpr) lambdaExpr.visit(shuttle);
diff --git a/core/src/main/java/org/apache/druid/math/expr/IdentifierExpr.java b/core/src/main/java/org/apache/druid/math/expr/IdentifierExpr.java
index fd8d7ae..da00932 100644
--- a/core/src/main/java/org/apache/druid/math/expr/IdentifierExpr.java
+++ b/core/src/main/java/org/apache/druid/math/expr/IdentifierExpr.java
@@ -132,12 +132,6 @@
   }
 
   @Override
-  public void visit(Visitor visitor)
-  {
-    visitor.visit(this);
-  }
-
-  @Override
   public Expr visit(Shuttle shuttle)
   {
     return shuttle.visit(this);
diff --git a/core/src/main/java/org/apache/druid/math/expr/UnaryOperatorExpr.java b/core/src/main/java/org/apache/druid/math/expr/UnaryOperatorExpr.java
index c741a5a..97a033e 100644
--- a/core/src/main/java/org/apache/druid/math/expr/UnaryOperatorExpr.java
+++ b/core/src/main/java/org/apache/druid/math/expr/UnaryOperatorExpr.java
@@ -46,13 +46,6 @@
   abstract UnaryExpr copy(Expr expr);
 
   @Override
-  public void visit(Visitor visitor)
-  {
-    expr.visit(visitor);
-    visitor.visit(this);
-  }
-
-  @Override
   public Expr visit(Shuttle shuttle)
   {
     Expr newExpr = expr.visit(shuttle);
diff --git a/processing/src/main/java/org/apache/druid/query/expression/TrimExprMacro.java b/processing/src/main/java/org/apache/druid/query/expression/TrimExprMacro.java
index f019edc..48a007c 100644
--- a/processing/src/main/java/org/apache/druid/query/expression/TrimExprMacro.java
+++ b/processing/src/main/java/org/apache/druid/query/expression/TrimExprMacro.java
@@ -283,14 +283,6 @@
     }
 
     @Override
-    public void visit(final Visitor visitor)
-    {
-      stringExpr.visit(visitor);
-      charsExpr.visit(visitor);
-      visitor.visit(this);
-    }
-
-    @Override
     public Expr visit(Shuttle shuttle)
     {
       Expr newStringExpr = stringExpr.visit(shuttle);