$(VARIABLE) dalam file BUILD dan diperluas oleh ctx.expand_make_variables serta secara implisit dalam atribut tertentu dari aturan bawaan.TemplateVariableInfo dapat dibuat dengan memanggil konstruktor eponimnya dengan kamus string-ke-string sebagai argumen yang menentukan variabel yang disediakan.
Contoh: platform_common.TemplateVariableInfo({'FOO': 'bar'})
Anggota
to_json
string TemplateVariableInfo.to_json()
---incompatible_struct_has_no_methods. Gunakan flag ini untuk memverifikasi bahwa kode Anda kompatibel dengan penghapusan API yang akan segera dilakukan. Membuat string JSON dari parameter struct. Metode ini hanya berfungsi jika semua elemen struct (secara rekursif) adalah string, int, boolean, struct lain, daftar jenis ini, atau kamus dengan kunci string dan nilai jenis ini. Tanda kutip dan baris baru dalam string akan di-escape. Contoh:
struct(key=123).to_json()
# {"key":123}
struct(key=True).to_json()
# {"key":true}
struct(key=[1, 2, 3]).to_json()
# {"key":[1,2,3]}
struct(key='text').to_json()
# {"key":"text"}
struct(key=struct(inner_key='text')).to_json()
# {"key":{"inner_key":"text"}}
struct(key=[struct(inner_key=1), struct(inner_key=2)]).to_json()
# {"key":[{"inner_key":1},{"inner_key":2}]}
struct(key=struct(inner_key=struct(inner_inner_key='text'))).to_json()
# {"key":{"inner_key":{"inner_inner_key":"text"}}}
Tidak digunakan lagi: sebagai gantinya, gunakan json.encode(x) atau json.encode_indent(x), yang berfungsi untuk nilai selain struct dan tidak mengganggu namespace kolom struct.
to_proto
string TemplateVariableInfo.to_proto()
---incompatible_struct_has_no_methods. Gunakan flag ini untuk memverifikasi bahwa kode Anda kompatibel dengan penghapusan API yang akan segera dilakukan. Membuat pesan teks dari parameter struct. Metode ini hanya berfungsi jika semua elemen struct (secara rekursif) adalah string, int, boolean, struct lain, atau kamus atau daftar jenis ini. Tanda kutip dan baris baru dalam string akan di-escape. Kunci struct diulang dalam urutan yang diurutkan. Contoh:
struct(key=123).to_proto()
# key: 123
struct(key=True).to_proto()
# key: true
struct(key=[1, 2, 3]).to_proto()
# key: 1
# key: 2
# key: 3
struct(key='text').to_proto()
# key: "text"
struct(key=struct(inner_key='text')).to_proto()
# key {
# inner_key: "text"
# }
struct(key=[struct(inner_key=1), struct(inner_key=2)]).to_proto()
# key {
# inner_key: 1
# }
# key {
# inner_key: 2
# }
struct(key=struct(inner_key=struct(inner_inner_key='text'))).to_proto()
# key {
# inner_key {
# inner_inner_key: "text"
# }
# }
struct(foo={4: 3, 2: 1}).to_proto()
# foo: {
# key: 4
# value: 3
# }
# foo: {
# key: 2
# value: 1
# }
Tidak digunakan lagi: gunakan proto.encode_text(x) sebagai gantinya.
variabel
dict TemplateVariableInfo.variables