종속 항목 에지에서의 구성 전환을 나타냅니다. 예를 들어 //package:foo
가 구성 전환을 통해 //package:bar
에 종속되면 이 두 타겟의 구성이 달라집니다. //package:bar
의 전환은 전환 객체에서 정의한 함수에 따라 //package:foo
의 전환에 따라 결정됩니다.
회원
전환
transition transition(implementation, inputs, outputs)일련의 입력 빌드 설정을 읽고 일련의 출력 빌드 설정을 쓰는 전환입니다.
예:
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"], )
자세한 정보는 여기를 참고하세요.
매개변수
매개변수 | 설명 |
---|---|
implementation
|
필수 이 전환을 구현하는 함수입니다. 이 함수에는 항상 settings 및 attr 라는 두 매개변수가 있습니다. settings 매개변수는 이 키 집합이 입력 매개변수로 정의된 사전입니다. 따라서 각 빌드 설정 --//foo=bar 의 경우 inputs 에 //foo 가 포함되어 있으면 settings 에는 settings['//foo']='bar' 항목이 있습니다.
이 함수는 빌드 설정 식별자에서 빌드 설정 값으로 |
inputs
|
string의 sequence;
필수 이 전환에서 읽을 수 있는 빌드 설정 목록입니다. 이는 구현 함수 매개변수의 설정 매개변수의 키 세트가 됩니다. |
outputs
|
string의 sequence;
필수 이 전환에서 작성할 수 있는 빌드 설정 목록입니다. 이 전환에서 반환된 사전의 키 세트의 상위 집합이어야 합니다. |