@Override public boolean isEverything(ExpressionVisitor visitor) { switch (visitor.getType()) { case ExpressionVisitor.EVALUATABLE: case ExpressionVisitor.NOT_FROM_RESOLVER: case ExpressionVisitor.GET_COLUMNS: case ExpressionVisitor.GET_AGGREGATE: return true; case ExpressionVisitor.DETERMINISTIC: case ExpressionVisitor.READONLY: case ExpressionVisitor.INDEPENDENT: case ExpressionVisitor.QUERY_COMPARABLE: return false; case ExpressionVisitor.GET_DEPENDENCIES: visitor.addDependency(sequence); return true; default: throw DbException.throwInternalError("type=" + visitor.getType()); } }
TableFilter f = filters.get(i); Table table = f.getTable(); visitor.addDependency(table); table.addDependencies(visitor.getDependencies());
case ExpressionVisitor.GET_DEPENDENCIES: if (column != null) { visitor.addDependency(column.getTable());