code: private CodeBlock getDefaultValue(Property prop, FieldSpec field) {
      if (field.type.isPrimitive()) {
        String defaultValue = getDefaultPrimitiveValue(field.type);
        if (defaultValue != null) {
          return CodeBlock.of("$L", defaultValue);
        } else {
          return CodeBlock.of("$T.valueOf(null)", field.type);
        }
      }
      if (prop.nullable()) {
        return null;
      }
      TypeMirror type = prop.element.getReturnType();
      if (type.getKind() != TypeKind.DECLARED) {
        return null;
      }
      TypeElement typeElement = MoreTypes.asTypeElement(type);
      if (typeElement == null) {
        return null;
      }
  
      return null;
    }
docs: Returns a default value for initializing well-known types, or else {@code null}.