七.Protobuf 3ネストタイプ

829 ワード

Protobuf 3ネストタイプ
メッセージ・タイプは、他のメッセージ・タイプで定義および使用できます.ここでResultメッセージは、SearchResponseメッセージで定義されています.
message SearchResponse {
  message Result {
    string url = 1;
    string title = 2;
    repeated string snippets = 3;
  }
  repeated Result results = 1;
}

親メッセージ・タイプ以外でこのメッセージ・タイプを再利用する場合は、次のように親タイプを指定する必要があります.
message SomeOtherMessage {
  SearchResponse.Result result = 1;
}

任意にネストできます.
message Outer {                  // Level 0
  message MiddleAA {  // Level 1
    message Inner {   // Level 2
      int64 ival = 1;
      bool  booly = 2;
    }
  }
  message MiddleBB {  // Level 1
    message Inner {   // Level 2
      int32 ival = 1;
      bool  booly = 2;
    }
  }
}

 
転載先:https://www.cnblogs.com/kexianting/p/11507578.html