Información predeterminada

Denuncia un problema Ver fuente Nightly · 7.4 . 7.3 · 7.2 · 7.1 · 7.0 · 6.5

Es un proveedor que brinda información general sobre los archivos directos y transitivos de un destino. Cada tipo de regla tiene este proveedor, incluso si la función de implementación de la regla no lo muestra de forma explícita. Cada instancia de DefaultInfo tiene los siguientes campos:

  • files
  • files_to_run
  • data_runfiles
  • default_runfiles
Consulta la página de reglas para obtener guías detalladas sobre cómo usar este proveedor.

Miembros

DefaultInfo

DefaultInfo DefaultInfo(files=None, runfiles=None, data_runfiles=None, default_runfiles=None, executable=None)

El constructor DefaultInfo.

Parámetros

Parámetro Descripción
files depset o None; El valor predeterminado es None
Un depset de objetos File que representan los resultados predeterminados que se compilarán cuando se especifique este destino en la línea de comandos de Bazel. De forma predeterminada, son todas las salidas declaradas previamente.
runfiles runfiles; o None; el valor predeterminado es None
descriptor de runfiles que describe los archivos que necesita este destino cuando se ejecuta (a través del comando run o como una dependencia de herramienta).
data_runfiles runfiles o None; el valor predeterminado es None

Se recomienda que evites usar este parámetro (consulta "Funciones de runfiles que debes evitar").

Es un descriptor de runfiles que describe los runfiles que este destino debe ejecutar cuando es una dependencia a través del atributo data.
default_runfiles runfiles o None; el valor predeterminado es None

Se recomienda que evites usar este parámetro (consulta "Funciones de runfiles que debes evitar").

Es un descriptor de runfiles que describe los runfiles que este destino debe ejecutar cuando es una dependencia a través de cualquier atributo que no sea el atributo data.
executable File o None; el valor predeterminado es None
Si esta regla está marcada como executable o test, este es un objeto File que representa el archivo que se debe ejecutar para ejecutar el destino. De forma predeterminada, es el resultado ctx.outputs.executable declarado previamente.

data_runfiles

runfiles DefaultInfo.data_runfiles

Es un descriptor de runfiles que describe los archivos que necesita este destino cuando se ejecuta en la condición de que sea un atributo de dependencia data. En la mayoría de los casos, usa el parámetro default_runfiles. Consulta "Funciones de runfiles que se deben evitar" para obtener más detalles. Puede mostrar None.

default_runfiles

runfiles DefaultInfo.default_runfiles

Es el descriptor de runfiles que describe los archivos que necesita este destino cuando se ejecuta (a través del comando run o como una dependencia de herramientas). Puede mostrar None.

archivos

depset DefaultInfo.files

Un depset de objetos File que representan los resultados predeterminados que se compilarán cuando se especifique este destino en la línea de comandos de Bazel. De forma predeterminada, son todas las salidas declaradas previamente. Puede mostrar None.

files_to_run

FilesToRunProvider DefaultInfo.files_to_run

Un objeto FilesToRunProvider que contiene información sobre los archivos ejecutables y de ejecución del destino Es posible que se muestre None.

to_json

string DefaultInfo.to_json()

Obsoleto.. Esta API dejó de estar disponible y se quitará pronto. No dependas de ella. Está inhabilitado con ---incompatible_struct_has_no_methods. Usa esta marca para verificar que tu código sea compatible con su eliminación inminente.
Crea una cadena JSON a partir del parámetro struct. Este método solo funciona si todos los elementos struct (de forma recurrente) son cadenas, ints, booleanos, otros structs, una lista de estos tipos o un diccionario con claves de cadenas y valores de estos tipos. Se escapan las comillas y las líneas nuevas en las cadenas. Ejemplos:
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"}}}
.

Obsoleto: En su lugar, usa json.encode(x) o json.encode_indent(x), que funcionan para valores distintos de las estructuras y no contaminan el espacio de nombres del campo de la estructura.

to_proto

string DefaultInfo.to_proto()

Obsoleto.. Esta API dejó de estar disponible y se quitará pronto. No dependas de ella. Está inhabilitada con ---incompatible_struct_has_no_methods. Usa esta marca para verificar que tu código sea compatible con su eliminación inminente.
Crea un mensaje de texto a partir del parámetro de struct. Este método solo funciona si todos los elementos de la estructura (de forma recursiva) son cadenas, números enteros, valores booleanos, otras estructuras, diccionarios o listas de estos tipos. Se escapan las comillas y las líneas nuevas en las cadenas. Las claves de la estructura se iteran en el orden ordenado. Ejemplos:
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
# }

Obsoleto: Usa proto.encode_text(x) en su lugar.