docs: @Override
      public Query doQuery(SingleColumnMapper<?> mapper, Analyzer analyzer) {
  
          // Check doc values
          if (docValues && !mapper.docValues) {
              throw new IndexException("Field '{}' does not support doc_values", mapper.field);
          }
  
          Class<?> clazz = mapper.base;
          Query query;
          if (clazz == String.class) {
              String base = (String) mapper.base(field, value);
              if (mapper instanceof TextMapper) {
                  QueryBuilder queryBuilder = new QueryBuilder(analyzer);
                  query = queryBuilder.createPhraseQuery(field, base, 0);
              } else {
                  query = query(base);
              }
              if (query == null) {
                  query = new BooleanQuery.Builder().build();
              }
          } else if (clazz == Integer.class) {
              query = query((Integer) mapper.base(field, value));
          } else if (clazz == Long.class) {
              query = query((Long) mapper.base(field, value));
          } else if (clazz == Float.class) {
              query = query((Float) mapper.base(field, value));
          } else if (clazz == Double.class) {
              query = query((Double) mapper.base(field, value));
          } else {
              throw new IndexException("Match queries are not supported by mapper '{}'", mapper);
          }
          return query;
      }