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
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 pré-declaradas.
|
runfiles
|
runfiles; ou None
o padrão é None descritor do arquivo runfiles que descreve os arquivos necessários para a execução desse destino (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 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 usando o atributodata .
|
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 atributodata .
|
executable
|
Arquivo ou None
o padrão é None Se a regra estiver marcada como executable ou test , será um objeto File que representa o arquivo que deve ser executado para executar o destino. Por padrão, é a saída pré-declarada ctx.outputs.executable .
|
data_runfiles
runfiles DefaultInfo.data_runfiles
data
. Na maioria das circunstâncias, use o parâmetro default_runfiles
. Consulte "recursos do runfiles que devem ser evitados" para saber mais detalhes.
Pode retornar None
.
default_runfiles
runfiles DefaultInfo.default_runfiles
run
ou como uma dependência de ferramenta).
Pode retornar None
.
arquivos
depset DefaultInfo.files
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
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()
---incompatible_struct_has_no_methods
. Use essa sinalização para verificar se seu código é compatível com a remoção iminente. Cria uma string JSON usando o parâmetro struct. Esse método só funciona se todos os elementos struct (recursivamente) forem strings, ints, booleanos, outras estruturas, uma lista desses tipos ou um dicionário com chaves de string e valores 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"}}}
Obsoleto: use json.encode(x) ou json.encode_indent(x), que funcionam para valores diferentes de structs e não poluem o namespace do campo de struct.
to_proto
string DefaultInfo.to_proto()
---incompatible_struct_has_no_methods
. Use essa sinalização para verificar se seu código é compatível com a remoção iminente. Cria uma mensagem de texto usando o parâmetro struct. Esse método só funciona se todos os elementos struct (recursivamente) forem strings, ints, booleanos, outros structs ou dicts ou listas desses tipos. Aspas e novas linhas em strings são escapadas. As chaves de struct são iteradas na ordem de classificação. 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 # }
Obsoleto: use proto.encode_text(x).