content: /*
   * Copyright 1999-2017 Alibaba Group Holding Ltd.
   *
   * Licensed under the Apache License, Version 2.0 (the "License") {
          return true;
      }
   * you may not use this file except in compliance with the License.
   * You may obtain a copy of the License at
   *
   *      http://www.apache.org/licenses/LICENSE-2.0
   *
   * Unless required by applicable law or agreed to in writing, software
   * distributed under the License is distributed on an "AS IS" BASIS,
   * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   * See the License for the specific language governing permissions and
   * limitations under the License.
   */
  package com.alibaba.druid.sql.dialect.odps.visitor;
  
  import com.alibaba.druid.sql.ast.statement.SQLCreateTableStatement;
  import com.alibaba.druid.sql.ast.statement.SQLGrantStatement;
  import com.alibaba.druid.sql.ast.statement.SQLSelectQueryBlock;
  import com.alibaba.druid.sql.dialect.hive.visitor.HiveASTVisitor;
  import com.alibaba.druid.sql.dialect.odps.ast.*;
  
  public interface OdpsASTVisitor extends HiveASTVisitor {
      default void endVisit(OdpsCreateTableStatement x) {
          endVisit((SQLCreateTableStatement) x);
      }
  
      default boolean visit(OdpsCreateTableStatement x) {
          return visit((SQLCreateTableStatement) x);
      }
  
      default void endVisit(OdpsUDTFSQLSelectItem x) {
      }
  
      default boolean visit(OdpsUDTFSQLSelectItem x) {
          return true;
      }
  
      default void endVisit(OdpsSetLabelStatement x) {
      }
  
      default boolean visit(OdpsSetLabelStatement x) {
          return true;
      }
  
      default void endVisit(OdpsSelectQueryBlock x) {
          endVisit((SQLSelectQueryBlock) x);
      }
  
      default boolean visit(OdpsSelectQueryBlock x) {
          return visit((SQLSelectQueryBlock) x);
      }
  
      default void endVisit(OdpsAddStatisticStatement x) {
      }
  
      default boolean visit(OdpsAddStatisticStatement x) {
          return true;
      }
  
      default void endVisit(OdpsRemoveStatisticStatement x) {
      }
  
      default boolean visit(OdpsRemoveStatisticStatement x) {
          return true;
      }
  
      default void endVisit(OdpsStatisticClause.TableCount x) {
      }
  
      default boolean visit(OdpsStatisticClause.TableCount x) {
          return true;
      }
  
      default void endVisit(OdpsStatisticClause.ExpressionCondition x) {
      }
  
      default boolean visit(OdpsStatisticClause.ExpressionCondition x) {
          return true;
      }
  
      default void endVisit(OdpsStatisticClause.NullValue x) {
      }
  
      default boolean visit(OdpsStatisticClause.NullValue x) {
          return true;
      }
  
      default void endVisit(OdpsStatisticClause.DistinctValue x) {
      }
  
      default boolean visit(OdpsStatisticClause.DistinctValue x) {
          return true;
      }
  
      default void endVisit(OdpsStatisticClause.ColumnSum x) {
      }
  
      default boolean visit(OdpsStatisticClause.ColumnSum x) {
          return true;
      }
  
      default void endVisit(OdpsStatisticClause.ColumnMax x) {
      }
  
      default boolean visit(OdpsStatisticClause.ColumnMax x) {
          return true;
      }
  
      default void endVisit(OdpsStatisticClause.ColumnMin x) {
      }
  
      default boolean visit(OdpsStatisticClause.ColumnMin x) {
          return true;
      }
  
      default void endVisit(OdpsReadStatement x) {
      }
  
      default boolean visit(OdpsReadStatement x) {
          return true;
      }
  
      default void endVisit(OdpsShowGrantsStmt x) {
      }
  
      default boolean visit(OdpsShowGrantsStmt x) {
          return true;
      }
  
      default void endVisit(OdpsShowChangelogsStatement x) {
      }
  
      default boolean visit(OdpsShowChangelogsStatement x) {
          return true;
      }
  
      default void endVisit(OdpsListStmt x) {
      }
  
      default boolean visit(OdpsListStmt x) {
          return true;
      }
  
      default void endVisit(OdpsGrantStmt x) {
          endVisit((SQLGrantStatement) x);
      }
  
      default boolean visit(OdpsGrantStmt x) {
          return visit((SQLGrantStatement) x);
      }
  
      default boolean visit(OdpsAddTableStatement x) {
          return true;
      }
  
      default void endVisit(OdpsAddTableStatement x) {
      }
  
      default boolean visit(OdpsAddFileStatement x) {
          return true;
      }
  
      default void endVisit(OdpsAddFileStatement x) {
      }
  
      default boolean visit(OdpsAddUserStatement x) {
          return true;
      }
  
      default void endVisit(OdpsAddUserStatement x) {
      }
  
      default boolean visit(OdpsRemoveUserStatement x) {
          return true;
      }
  
      default void endVisit(OdpsRemoveUserStatement x) {
      }
  
      default boolean visit(OdpsAlterTableSetChangeLogs x) {
          return true;
      }
  
      default void endVisit(OdpsAlterTableSetChangeLogs x) {
      }
  
      default boolean visit(OdpsAlterTableChangeOwner x) {
          return true;
      }
  
      default void endVisit(OdpsAlterTableChangeOwner x) {
      }
  
      default boolean visit(OdpsCountStatement x) {
          return true;
      }
  
      default void endVisit(OdpsCountStatement x) {
      }
  
      default boolean visit(OdpsQueryAliasStatement x) {
          return true;
      }
  
      default void endVisit(OdpsQueryAliasStatement x) {
      }
  
      default boolean visit(OdpsTransformExpr x) {
          return true;
      }
  
      default void endVisit(OdpsTransformExpr x) {
      }
  
      default boolean visit(OdpsExstoreStatement x) {
          return true;
      }
  
      default void endVisit(OdpsExstoreStatement x) {
      }
  
      default boolean visit(OdpsNewExpr x) {
          return true;
      }
  
      default void endVisit(OdpsNewExpr x) {
      }
  
      default boolean visit(OdpsInstallPackageStatement x) {
          return true;
      }
  
      default void endVisit(OdpsInstallPackageStatement x) {
      }
  
      default boolean visit(OdpsDeclareVariableStatement x) {
          return true;
      }
  
      default void endVisit(OdpsDeclareVariableStatement x) {
      }
  
      default boolean visit(OdpsAddAccountProviderStatement x) {
          return true;
      }
  
      default void endVisit(OdpsAddAccountProviderStatement x) {
      }
  
      default boolean visit(OdpsUnloadStatement x) {
          return true;
      }
  
      default void endVisit(OdpsUnloadStatement x) {
      }
  
      default boolean visit(OdpsAlterTableSetFileFormat x) {
          return true;
      }
  
      default void endVisit(OdpsAlterTableSetFileFormat x) {
      }
  
      default boolean visit(OdpsRestoreStatement x) {
          return true;
      }
  
      default void endVisit(OdpsRestoreStatement x) {
      }
  
      default boolean visit(OdpsUndoTableStatement x) {
          return true;
      }
  
      default void endVisit(OdpsUndoTableStatement x) {
      }
  
      default boolean visit(OdpsPAIStmt x) {
          return true;
      }
  
      default void endVisit(OdpsPAIStmt x) {
      }
  
      default boolean visit(OdpsCopyStmt x) {
          return true;
      }
  
      default void endVisit(OdpsCopyStmt x) {
      }
  
  }
  