static String encodeWithAnnotations(TypeMirror type) {
    return encodeWithAnnotations(type, ImmutableList.of(), ImmutableSet.of());
  }
Encodes the given type and its type annotations. The class comment for {@link TypeEncoder}
covers the details of annotation encoding.
value/src/main/java/com/google/auto/value/processor/TypeEncoder.java