InfoVariabelTemplate

.

Mengenkapsulasi variabel template, yaitu variabel yang dapat direferensikan oleh string seperti $(VARIABLE) dalam file BUILD dan diperluas oleh ctx.expand_make_variables dan secara implisit dalam atribut tertentu dari aturan bawaan.

TemplateVariableInfo dapat dibuat dengan memanggil konstruktor eponimnya dengan perintah string ke string sebagai argumen yang menentukan variabel yang disediakan.

Contoh: platform_common.TemplateVariableInfo({'FOO': 'bar'})

Anggota

to_json

string TemplateVariableInfo.to_json()

Tidak digunakan lagi. API ini tidak digunakan lagi dan akan segera dihapus. Jangan bergantung pada hal ini. Layanan ini dinonaktifkan dengan ---incompatible_struct_has_no_methods. Gunakan tanda ini untuk memverifikasi bahwa kode Anda kompatibel dengan penghapusan yang akan segera terjadi.
Membuat string JSON dari parameter struct. Metode ini hanya berfungsi jika semua elemen struct (secara rekursif) adalah string, int, boolean, struct lainnya, daftar jenis ini, atau kamus dengan kunci string dan nilai dari jenis ini. Tanda petik 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 mencemari namespace kolom struct.

to_proto

string TemplateVariableInfo.to_proto()

Tidak digunakan lagi. API ini sudah tidak digunakan lagi dan akan segera dihapus. Jangan bergantung pada hal ini. Layanan ini dinonaktifkan dengan ---incompatible_struct_has_no_methods. Gunakan tanda ini untuk memverifikasi bahwa kode Anda kompatibel dengan penghapusannya yang akan segera dilakukan.
Membuat pesan teks dari parameter struct. Metode ini hanya berfungsi jika semua elemen struct (rekursif) adalah string, int, boolean, struct atau dict lain, atau daftar jenis ini. Tanda kutip dan baris baru dalam string akan di-escape. Kunci struktur diiterasi 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

Menampilkan variabel make yang ditentukan oleh target ini sebagai kamus dengan kunci string dan nilai string