@Override
  public String toString() {
    StringBuilder builder = new StringBuilder("@").append(annotationType.getQualifiedName());
    if (!namedValues.isEmpty()) {
      builder
          .append('(')
          .append(Joiner.on(", ").withKeyValueSeparator(" = ").join(namedValues))
          .append(')');
    }
    return builder.toString();
  }
An object representing an {@linkplain ElementKind#ANNOTATION_TYPE annotation} instance. If
{@code annotationType} has any annotation members, they must either be present in {@code
namedValues} or have default values.
common/src/main/java/com/google/auto/common/SimpleAnnotationMirror.java