private CharSequence appendReturnType(
      ExecutableElement m,
      StringBuilder signature,
      DeclaringType declaringType,
      TypeMirror returnType) {
    return signature.append(printType(m, returnType, declaringType));
  }
Means object hashcode is cached at some point. Either lazily (on first access)
or eagerly (during construction).
@see #isUseLazyhash()
@see #isUsePrehashed()
value-processor/src/org/immutables/value/processor/meta/ValueType.java