public Builder mergeFrom(com.github.jsdossier.proto.JsTypeRenderSpec other) {
   if (other == com.github.jsdossier.proto.JsTypeRenderSpec.getDefaultInstance()) return this;
   if (typeBuilder_ == null) {
     if (!other.type_.isEmpty()) {
       if (type_.isEmpty()) {
         type_ = other.type_;
         bitField0_ = (bitField0_ & ~0x00000001);
       } else {
         ensureTypeIsMutable();
         type_.addAll(other.type_);
       }
       onChanged();
     }
   } else {
     if (!other.type_.isEmpty()) {
       if (typeBuilder_.isEmpty()) {
         typeBuilder_.dispose();
         typeBuilder_ = null;
         type_ = other.type_;
         bitField0_ = (bitField0_ & ~0x00000001);
         typeBuilder_ =
             com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders
                 ? getTypeFieldBuilder()
                 : null;
       } else {
         typeBuilder_.addAllMessages(other.type_);
       }
     }
   }
   if (other.hasResources()) {
     mergeResources(other.getResources());
   }
   if (other.hasIndex()) {
     mergeIndex(other.getIndex());
   }
   this.mergeUnknownFields(other.getUnknownFields());
   return this;
 }
 public com.github.jsdossier.proto.JsTypeRenderSpec getDefaultInstanceForType() {
   return com.github.jsdossier.proto.JsTypeRenderSpec.getDefaultInstance();
 }