Miembros
Etiqueta
Label Label(input)Convierte una string de etiqueta en un objeto
Label
, en el contexto del paquete en el que se encuentra el archivo de origen .bzl
. Si el valor especificado ya es Label
, no se muestra.Para las macros, una función relacionada, native.package_relative_label()
, convierte la entrada en un Label
en el contexto del paquete que se está construyendo. Usa esa función para imitar la conversión de string a etiqueta que realizan automáticamente los atributos de reglas con valor de etiqueta.
Parámetros
Parámetro | Descripción |
---|---|
input
|
string; or Label ;
obligatorioLa string de la etiqueta de entrada o el objeto de la etiqueta. Si se pasa un objeto de etiqueta, se muestra tal como está. |
del espacio
string Label.nameEs el nombre de esta etiqueta dentro del paquete. Por ejemplo:
Label("//pkg/foo:abc").name == "abc"
paquete
string Label.packageEs la parte del paquete de esta etiqueta. Por ejemplo:
Label("//pkg/foo:abc").package == "pkg/foo"
relativo
Label Label.relative(relName)Resuelve una etiqueta que es absoluta (comienza con
//
) o relativa al paquete actual. Si esta etiqueta está en un repositorio remoto, el argumento se resolverá en relación con ese repositorio. Si el argumento contiene un nombre de repositorio, la etiqueta actual se ignora y el argumento se muestra tal como está, con la excepción de que el nombre del repositorio se reescribe si está en la asignación del repositorio actual. Las etiquetas reservadas también se mostrarán tal como están.Por ejemplo:
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")
Si la asignación de repositorio pasada es {'@other' : '@remapped'}
, se realizará la siguiente reasignación:
Label("@repo//foo/bar:baz").relative("@other//wiz:quux") == Label("@remapped//wiz:quux")
Parámetros
Parámetro | Descripción |
---|---|
relName
|
obligatorio La etiqueta que se resolverá en relación con esta. |
workspace_name
string Label.workspace_nameLa parte del repositorio de esta etiqueta. Por ejemplo:
Label("@foo//bar:baz").workspace_name == "foo"
root_workspace
string Label.workspace_rootMuestra la raíz de ejecución para el lugar de trabajo de esta etiqueta, en relación con el execroot. Por ejemplo:
Label("@repo//pkg/foo:abc").workspace_root == "external/repo"