Label

Laporkan masalah Lihat sumber

ID target build.

Anggota

Label

Label Label(input)

Mengonversi string label menjadi objek Label, dalam konteks paket tempat file sumber .bzl panggilan berada. Jika nilai yang diberikan sudah Label, tidak akan ditampilkan.

Untuk makro, fungsi terkait, native.package_relative_label(), mengonversi input menjadi Label dalam konteks paket yang saat ini sedang dibuat. Gunakan fungsi tersebut untuk meniru konversi string ke label yang dilakukan secara otomatis oleh atribut aturan yang bernilai label.

Parameter

Parameter Deskripsi
input string; or Label; wajib diisi
String label input atau objek Label. Jika objek Label diteruskan, objek tersebut akan ditampilkan apa adanya.

name

string Label.name

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

paket

string Label.package

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

relatif

Label Label.relative(relName)

Menyelesaikan label yang bersifat 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 jika nama repositori 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 dilakukan:

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

Parameter

Parameter Deskripsi
relName wajib
Label yang akan diselesaikan relatif terhadap label ini.

workspace_name

string Label.workspace_name

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

ruang kerja_root

string Label.workspace_root

Menampilkan root eksekusi untuk ruang kerja label ini, yang terkait dengan ekseroot. Misalnya:
Label("@repo//pkg/foo:abc").workspace_root == "external/repo"