1
指定されたプロトフィールドがrequired
とoptional
の2つのフィールドで表示されているかどうかをプログラムで確認できますか?私はPythonを使用しており、FieldDescriptor
オブジェクトを持っていますが、フィールドが必要かどうかを判断する方法が見つかりません。Googleプロトコルバッファフィールドが必要かどうかをプログラムで確認する
指定されたプロトフィールドがrequired
とoptional
の2つのフィールドで表示されているかどうかをプログラムで確認できますか?私はPythonを使用しており、FieldDescriptor
オブジェクトを持っていますが、フィールドが必要かどうかを判断する方法が見つかりません。Googleプロトコルバッファフィールドが必要かどうかをプログラムで確認する
documentationで簡単に見は、あなたのFieldDescriptor
が、それは、オプションで必要な、または繰り返しだかどうかを示すlabel
属性を持つべきであることを示しています。
from google.protobuf.descriptor import FieldDescriptor
if fd.label == FieldDescriptor.LABEL_OPTIONAL:
# do thing
elif fd.label == FieldDescriptor.LABEL_REQUIRED:
# do other thing
else:
# do third thing