BazelCon 2022 findet vom 16. bis 17. November in New York und online statt.
Jetzt anmelden

Label

Mit Sammlungen den Überblick behalten Sie können Inhalte basierend auf Ihren Einstellungen speichern und kategorisieren.
Ein BUILD-Zielkennung.

Mitglieder

Label

Label Label(label_string)

Erstellt ein Label, das auf ein BUILD-Ziel verweist. Verwenden Sie diese Funktion, wenn Sie einen Standardwert für die Labelattribute einer Regel geben oder wenn Sie über ein absolutes Label eines Makros auf ein Ziel verweisen. Das Argument muss sich auf ein absolutes Label beziehen. Der Repository-Teil des Labels (oder sein Fehlen) wird im Zusammenhang mit dem Repository interpretiert, in dem dieser Label()-Aufruf erscheint. Beispiel:
Label("//tools:default")

Parameter

Parameter Beschreibung
label_string Label-
erforderlich.

name

string Label.name

Der Name dieses Labels im Paket. Beispiel:
Label("//pkg/foo:abc").name == "abc"

Paket

string Label.package

Der Paketteil dieses Labels. Beispiel:
Label("//pkg/foo:abc").package == "pkg/foo"

Relativ

Label Label.relative(relName)

Gibt ein Label an, das entweder absolut ist (beginnend mit //) oder relativ zum aktuellen Paket ist. Wenn sich dieses Label in einem Remote-Repository befindet, wird das Argument im Verhältnis zu diesem Repository aufgelöst. Wenn das Argument einen Repository-Namen enthält, wird das aktuelle Label ignoriert und das Argument unverändert zurückgegeben. Die Ausnahme ist, dass der Repository-Name umgeschrieben wird, wenn er in der aktuellen Repository-Zuordnung enthalten ist. Reservierte Labels werden ebenfalls unverändert zurückgegeben.
Beispiel:
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")

Wenn die übergebene Repository-Zuordnung {'@other' : '@remapped'} ist, erfolgt die folgende Neuzuordnung:

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

Parameter

Parameter Beschreibung
relName erforderlich
Das Label, das im Verhältnis zu diesem Label aufgelöst wird.

Name des Arbeitsbereichs

string Label.workspace_name

Der Repository-Teil dieses Labels. Zum Beispiel:
Label("@foo//bar:baz").workspace_name == "foo"

workspace_root

string Label.workspace_root

Gibt den Ausführungsstamm für den Arbeitsbereich dieses Labels im Verhältnis zum Executor-Stamm zurück. Beispiel:
Label("@repo//pkg/foo:abc").workspace_root == "external/repo"