Información predeterminada

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 explícitamente. 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; or None; default = None
Un depset de objetos File que representa los resultados predeterminados que se compilarán cuando se especifique este destino en la línea de comandos de Bazel. De forma predeterminada, son todos resultados declarados previamente.
runfiles runfiles; or None; default = None
descriptor de ejecución que describe los archivos que necesita este destino cuando se ejecuta (a través del comando run o como una dependencia de la herramienta).
data_runfiles runfiles; or None; predeterminado = Ninguno

Se recomienda que evites el uso de este parámetro (consulta "funciones de runfiles que se deben evitar").

Descriptor de archivo runfile que describe los archivos de ejecución que debe ejecutar este destino cuando es una dependencia mediante el atributo data
default_runfiles runfiles; or None; predeterminado = Ninguno

Se recomienda que evites el uso de este parámetro (consulta "funciones de runfiles que se deben evitar").

Descriptor de archivo runfile que describe los archivos de ejecución que debe ejecutar este destino cuando es una dependencia mediante cualquier atributo que no sea el data
executable File; or None; valor predeterminado = Ninguno
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

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

default_runfiles

runfiles DefaultInfo.default_runfiles

Descriptor de ejecución de archivos que describe los archivos que necesita este destino cuando se ejecuta (a través del comando run o como una dependencia de herramienta). Puede mostrar None.

archivos

depset DefaultInfo.files

Una 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 todos resultados declarados previamente. Puede mostrar None.

files_to_run

FilesToRunProvider DefaultInfo.files_to_run

Un objeto FilesToRunProvider que contiene información sobre el ejecutable y los archivos de ejecución del destino Puede mostrar None.

to_json

string DefaultInfo.to_json()

Obsoleto.. Esta API dejó de estar disponible y se quitará pronto. No dependas de ello. Está inhabilitada con ---incompatible_struct_has_no_methods. Usa esta marca para verificar que tu código sea compatible con la 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 strings, ints, booleanos, otros structs, una lista de estos tipos o un diccionario con claves de string y valores de estos tipos. Las comillas y las líneas nuevas en las cadenas tienen escape. 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 structs y no contaminan el espacio de nombres del campo de struct.

to_proto

string DefaultInfo.to_proto()

Obsoleto.. Esta API dejó de estar disponible y se quitará pronto. No dependas de ello. Está inhabilitada con ---incompatible_struct_has_no_methods. Usa esta marca para verificar que tu código sea compatible con la eliminación inminente.
Crea un mensaje de texto a partir del parámetro struct. Este método solo funciona si todos los elementos struct (de forma recurrente) son strings, ints, booleanos, otros structs, dicts o listas de estos tipos. Las comillas y las líneas nuevas en las cadenas tienen escape. Las claves de struct se itera 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.