message: fix bug in deliminator and make more readable
diff: @@ -105,21 +105,22 @@ void Deliminator::FindCandidates(unique_ptr<LogicalOperator> *op_ptr,
  if (op->children[0]->type != LogicalOperatorType::LOGICAL_COMPARISON_JOIN) {
  return;
  }
  + auto &join = *op->children[0];
  // with a DelimGet as a direct child (left or right)
  - if (op->children[0]->children[0]->type == LogicalOperatorType::LOGICAL_DELIM_GET ||
  - op->children[0]->children[1]->type == LogicalOperatorType::LOGICAL_DELIM_GET) {
  + if (join.children[0]->type == LogicalOperatorType::LOGICAL_DELIM_GET ||
  + join.children[1]->type == LogicalOperatorType::LOGICAL_DELIM_GET) {
  candidates.push_back(op_ptr);
  return;
  }
  // or a filter followed by a DelimGet (left)
  - if (op->children[0]->children[0]->type == LogicalOperatorType::LOGICAL_FILTER &&
  - op->children[0]->children[0]->children[0]->type == LogicalOperatorType::LOGICAL_DELIM_GET) {
  + if (join.children[0]->type == LogicalOperatorType::LOGICAL_FILTER &&
  + join.children[0]->children[0]->type == LogicalOperatorType::LOGICAL_DELIM_GET) {
  candidates.push_back(op_ptr);
  return;
  }
  // filter followed by a DelimGet (right)
  - if (op->children[0]->children[1]->type == LogicalOperatorType::LOGICAL_FILTER &&
  - op->children[0]->children[1]->children[0]->type == LogicalOperatorType::LOGICAL_DELIM_GET) {
  + if (join.children[1]->type == LogicalOperatorType::LOGICAL_FILTER &&
  + join.children[1]->children[0]->type == LogicalOperatorType::LOGICAL_DELIM_GET) {
  candidates.push_back(op_ptr);
  return;
  }
  @@ -134,7 +135,7 @@ bool Deliminator::RemoveCandidate(unique_ptr<LogicalOperator> *op_ptr, Deliminat
  // get the index (left or right) of the DelimGet side of the join
  idx_t delim_idx = join.children[0]->type == LogicalOperatorType::LOGICAL_DELIM_GET ||
  (join.children[0]->type == LogicalOperatorType::LOGICAL_FILTER &&
  - join.children[0]->type == LogicalOperatorType::LOGICAL_DELIM_GET)
  + join.children[0]->children[0]->type == LogicalOperatorType::LOGICAL_DELIM_GET)
  ? 0
  : 1;
  // get the filter (if any)
  @@ -143,6 +144,7 @@ bool Deliminator::RemoveCandidate(unique_ptr<LogicalOperator> *op_ptr, Deliminat
  : nullptr);
  auto &delim_get =
  (LogicalDelimGet &)*(filter != nullptr ? join.children[delim_idx]->children[0] : join.children[delim_idx]);
  + D_ASSERT(delim_get.type == LogicalOperatorType::LOGICAL_DELIM_GET);
  if (join.conditions.size() != delim_get.chunk_types.size()) {
  // joining with DelimGet adds new information
  return false;
  