Label

ID target BUILD.

Anggota

Label

Label Label(label_string)

Membuat Label yang merujuk ke target BUILD. Gunakan fungsi ini saat Anda ingin memberikan nilai default untuk atribut label aturan atau saat merujuk ke target melalui label absolut dari makro. Argumen harus merujuk pada label absolut. Bagian repositori label (atau ketiadaannya) ditafsirkan dalam konteks repo tempat panggilan Label() ini muncul. Contoh:
Label("//tools:default")

Parameter

Parameter Deskripsi
label_string wajib
string label.

nama

string Label.name

Nama label ini dalam paket. Sebagai contoh:
Label("//pkg/foo:abc").name == "abc"

paket

string Label.package

Bagian paket dari label ini. Sebagai contoh:
Label("//pkg/foo:abc").package == "pkg/foo"

relatif

Label Label.relative(relName)

Menyelesaikan label yang absolut (dimulai dengan //) atau relatif terhadap paket saat ini. Jika label ini berada di repositori jarak jauh, argumen akan diselesaikan secara relatif terhadap repositori tersebut. Jika argumen berisi nama repositori, label saat ini akan diabaikan dan argumen akan ditampilkan apa adanya, kecuali bahwa nama repositori akan ditulis ulang jika berada dalam pemetaan repositori saat ini. Label yang dicadangkan juga akan ditampilkan apa adanya.
Misalnya:
Label("//foo/bar:baz").relative(":quux") == Label("//foo/bar:quux")
Label("//foo/bar:baz").relative("//wiz:quux") == Label("//wiz:quux")
Label("@repo//foo/bar:baz").relative("//wiz:quux") == Label("@repo//wiz:quux")
Label("@repo//foo/bar:baz").relative("//visibility:public") == Label("//visibility:public")
Label("@repo//foo/bar:baz").relative("@other//wiz:quux") == Label("@other//wiz:quux")

Jika pemetaan repositori yang diteruskan adalah {'@other' : '@remapped'}, pemetaan ulang berikut akan terjadi:

Label("@repo//foo/bar:baz").relative("@other//wiz:quux") == Label("@remapped//wiz:quux")

Parameter

Parameter Deskripsi
relName wajib
Label yang akan diselesaikan terkait dengan label ini.

workspace_name

string Label.workspace_name

Bagian repositori label ini. Misalnya,
Label("@foo//bar:baz").workspace_name == "foo"

workspace_root

string Label.workspace_root

Menampilkan root eksekusi untuk ruang kerja label ini, relatif terhadap execroot. Sebagai contoh:
Label("@repo//pkg/foo:abc").workspace_root == "external/repo"