Informações padrão

Reportar um problema Ver código-fonte Nightly · 7.4 . 7.3 · 7.2 · 7.1 · 7.0 · 6.5

Um provedor que fornece informações gerais sobre os arquivos diretos e transitivos de um destino. Todo tipo de regra tem esse provedor, mesmo que ele não seja retornado explicitamente pela função de implementação da regra. Cada instância DefaultInfo tem os seguintes campos:

  • files
  • files_to_run
  • data_runfiles
  • default_runfiles
Consulte a página regras para conferir guias completos sobre como usar esse provedor.

Membros

DefaultInfo

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

O construtor DefaultInfo.

Parâmetros

Parâmetro Descrição
files depset ou None; o padrão é None
Um depset de objetos File que representam as saídas padrão a serem criadas quando esse destino é especificado na linha de comando do Bazel. Por padrão, são todas as saídas predeclaradas.
runfiles runfiles; ou None; o padrão é None
descritor de arquivos de execução que descreve os arquivos que esse destino precisa quando executado (por meio do comando run ou como uma dependência de ferramenta).
data_runfiles runfiles ou None. O padrão é None
.

É recomendável evitar o uso desse parâmetro (consulte "Recursos de runfiles a serem evitados").

Descritores de arquivos de execução que descrevem os arquivos de execução que esse destino precisa executar quando é uma dependência pelo atributo data.
default_runfiles runfiles; ou None; o padrão é None

É recomendável evitar o uso desse parâmetro (consulte "Recursos do runfiles que devem ser evitados").

descritor do arquivo runfiles que descreve os arquivos de execução que esse destino precisa executar quando é uma dependência por qualquer atributo diferente do atributo data.
executable Arquivo ou None. O padrão é None
. Se essa regra for marcada como executable ou test, será um objeto File que representa o arquivo que precisa ser executado para executar o destino. Por padrão, é a saída ctx.outputs.executable predeclarada.

data_runfiles

runfiles DefaultInfo.data_runfiles

Descriptor de runfiles que descreve os arquivos necessários para esse destino quando executado na condição de ser um atributo de dependência data. Na maioria das circunstâncias, use o parâmetro default_runfiles. Consulte Recursos de runfiles a serem evitados para mais detalhes. Pode retornar None.

default_runfiles

runfiles DefaultInfo.default_runfiles

Descritores de runfiles que descrevem os arquivos necessários para a execução desse destino (pelo comando run ou como dependência de ferramenta). Pode retornar None.

arquivos

depset DefaultInfo.files

Um depset de objetos File que representam as saídas padrão a serem criadas quando esse destino é especificado na linha de comando do Bazel. Por padrão, são todas as saídas pré-declaradas. Pode retornar None.

files_to_run

FilesToRunProvider DefaultInfo.files_to_run

Um objeto FilesToRunProvider contendo informações sobre o executável e os arquivos de execução do destino. Pode retornar None.

to_json

string DefaultInfo.to_json()

Descontinuado. Essa API foi descontinuada e será removida em breve. Não dependa dele. Ele está desativado com ---incompatible_struct_has_no_methods. Use essa flag para verificar se o código é compatível com a remoção iminente.
Cria uma string JSON com base no parâmetro de estrutura. Esse método só funciona se todos os elementos de struct (recursivamente) forem strings, números inteiros, booleanos, outros structs, uma lista desses tipos ou um dicionário com chaves e valores de string desses tipos. Aspas e novas linhas em strings são escapadas. Exemplos:
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"}}}
.

Descontinuado: em vez disso, use json.encode(x) ou json.encode_indent(x), que funcionam para valores diferentes de structs e não poluem o namespace de campo do struct.

to_proto

string DefaultInfo.to_proto()

Descontinuado. Esta API foi descontinuada e será removida em breve. Não dependa disso. Ele está desativado com ---incompatible_struct_has_no_methods. Use essa flag para verificar se o código é compatível com a remoção iminente.
Cria uma mensagem de texto com base no parâmetro de estrutura. Esse método só funciona se todos os elementos de struct (recursivamente) forem strings, ints, booleans, outros structs ou dicionários ou listas desses tipos. Aspas e novas linhas em strings são escapadas. As chaves de estrutura são iteradas na ordem classificada. Exemplos:
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
# }

Descontinuado: use proto.encode_text(x).