docs: @VisibleForTesting
      FieldValue createFieldValue(SearchQueryField field, String quotedStringValue, boolean negate) {
          // Make sure there are no quotes in the value (e.g. `"foo"' --> `foo')
          final String value = quotedStringValue.replaceAll(QUOTE_REPLACE_REGEX, "");
          final SearchQueryField.Type fieldType = field.getFieldType();
          final Pair<String, SearchQueryOperator> pair = extractOperator(value, fieldType == STRING ? DEFAULT_STRING_OPERATOR : DEFAULT_OPERATOR);
  
          switch (fieldType) {
              case DATE:
                  return new FieldValue(parseDate(pair.getLeft()), pair.getRight(), negate);
              case STRING:
                  return new FieldValue(pair.getLeft(), pair.getRight(), negate);
              case INT:
                  return new FieldValue(Integer.parseInt(pair.getLeft()), pair.getRight(), negate);
              case LONG:
                  return new FieldValue(Long.parseLong(pair.getLeft()), pair.getRight(), negate);
              default:
                  throw new IllegalArgumentException("Unhandled field type: " + fieldType.toString());
          }
      }