docs: @SneakyThrows
      public SQLStatement fill(final Collection<SQLSegment> sqlSegments, final SQLStatementRule rule) {
          SQLStatement result = rule.getSqlStatementClass().newInstance();
          result.setLogicSQL(sql);
          for (SQLSegment each : sqlSegments) {
              Optional<SQLSegmentFiller> filler = parsingRuleRegistry.findSQLSegmentFiller(databaseType, each.getClass());
              if (filler.isPresent()) {
                  doFill(each, result, filler.get());
              }
          }
          return result;
      }