ProtoModül

. Protokol mesajı işleme modülü.

Üyeler

encode_text

string ProtoModule.encode_text(x)

struct bağımsız değişkeninin kodlamasını metin biçiminde protokol mesajı olarak döndürür. Veri yapısı yinelemeli bir biçimde dize, int, bol veya bool ya da bu türlerdeki struct'lar, diziler ve dikterlerden oluşmalıdır.

struct, mesaja dönüştürülür. Alanlar, ad sırasına göre gösterilir.

Bir dizi (liste veya unsur gibi), yinelenen bir alana dönüştürülür. Öğeleri dizi veya dikte olmamalıdır.

Dikte, "anahtar" adlı alanlara sahip tekrarlanan bir mesaj alanına dönüştürülür ve "value" gibi özellikler içerir. Girişler, yineleme (ekleme) sırasına göre gönderilir. Söylemin anahtarları dize, ints veya bool olmalıdır. Değerleri, dizi veya dikte olmamalıdır. Örnekler:

struct(field=123).to_proto()
# field: 123

struct(field=True).to_proto()
# field: true

struct(field=[1, 2, 3]).to_proto()
# field: 1
# field: 2
# field: 3

struct(field='text').to_proto()
# field: "text"

struct(field=struct(inner_field='text')).to_proto()
# field {
#   inner_field: "text"
# }

struct(field=[struct(inner_field=1), struct(inner_field=2)]).to_proto()
# field {
#   inner_field: 1
# }
# field {
#   inner_field: 2
# }

struct(field=struct(inner_field=struct(inner_inner_field='text'))).to_proto()
# field {
#    inner_field {
#     inner_inner_field: "text"
#   }
# }

struct(foo={4: 3, 2: 1}).to_proto()
# foo: {
#   key: 4
#   value: 3
# }
# foo: {
#   key: 2
#   value: 1
# }

Parametreler

Parametre Açıklama
x zorunlu