Representa uma transição de configuração em uma aresta de dependência. Por exemplo, se //package:foo depender de //package:bar com uma transição de configuração, a configuração de //package:bar (e das dependências dela) será a configuração de //package:foo mais as mudanças especificadas pela função de transição.
Membros
transição
transition transition(*, implementation, inputs, outputs)
Exemplo:
def _transition_impl(settings, attr):
    # This transition just reads the current CPU value as a demonstration.
    # A real transition could incorporate this into its followup logic.
    current_cpu = settings["//command_line_option:cpu"]
    return {"//command_line_option:compilation_mode": "dbg"}
build_in_debug_mode = transition(
    implementation = _transition_impl,
    inputs = ["//command_line_option:cpu"],
    outputs = ["//command_line_option:compilation_mode"],
)Para saber mais detalhes, acesse esta página.
Parâmetros
| Parâmetro | Descrição | 
|---|---|
| implementation | callable;
                                     required A função que implementa essa transição. Essa função sempre tem dois parâmetros: settingseattr. O parâmetrosettingsé um dicionário cujo conjunto de chaves é definido pelo parâmetro "inputs". Assim, para cada configuração de build--//foo=bar, seinputscontiver//foo,settingsterá uma entradasettings['//foo']='bar'.O parâmetro  Essa função precisa retornar um  | 
| inputs | sequence de strings;
                                     required Lista de configurações de build que podem ser lidas por essa transição. Esse se torna o conjunto de chaves do parâmetro de configurações do parâmetro da função de implementação. | 
| outputs | sequence de strings;
                                     required Lista de configurações de build que podem ser gravadas por essa transição. Precisa ser um superconjunto do conjunto de chaves do dicionário retornado por essa transição. |