public Builder SetMsg(global::Google.ProtocolBuffers.TestProtos.ForeignMessage value)
 {
     pb::ThrowHelper.ThrowIfNull(value, "value");
     result.hasMsg = true;
     result.msg_   = value;
     return(this);
 }
 public Builder MergeMsg(global::Google.ProtocolBuffers.TestProtos.ForeignMessage value)
 {
     pb::ThrowHelper.ThrowIfNull(value, "value");
     if (result.HasMsg &&
         result.msg_ != global::Google.ProtocolBuffers.TestProtos.ForeignMessage.DefaultInstance)
     {
         result.msg_ = global::Google.ProtocolBuffers.TestProtos.ForeignMessage.CreateBuilder(result.msg_).MergeFrom(value).BuildPartial();
     }
     else
     {
         result.msg_ = value;
     }
     result.hasMsg = true;
     return(this);
 }