Biểu thị một quá trình chuyển đổi cấu hình trên một cạnh của phần phụ thuộc. Ví dụ: nếu //package:foo
phụ thuộc vào //package:bar
bằng một quá trình chuyển đổi cấu hình, thì cấu hình của hai mục tiêu này sẽ khác nhau: quá trình chuyển đổi của //package:bar
sẽ được xác định theo quá trình chuyển đổi của //package:foo
, tuỳ thuộc vào hàm do một đối tượng chuyển đổi xác định.
Hội viên
chuyển cảnh
transition transition(implementation, inputs, outputs)
Ví dụ:
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"], )
Để biết thêm chi tiết, vui lòng xem tại đây.
Thông số
Thông số | Mô tả |
---|---|
implementation
|
callable;
required Hàm triển khai quá trình chuyển đổi này. Hàm này luôn có hai tham số: settings và attr . Tham số settings là một từ điển có tập hợp khoá được xác định bằng tham số đầu vào. Vì vậy, đối với mỗi chế độ cài đặt bản dựng --//foo=bar , nếu inputs chứa //foo , thì settings sẽ có một mục nhập settings['//foo']='bar' .Tham số Hàm này phải trả về một |
inputs
|
sequence của strings;
required Danh sách các chế độ cài đặt bản dựng mà quá trình chuyển đổi này có thể đọc. Đây sẽ là tập hợp khoá của tham số cài đặt của tham số hàm triển khai. |
outputs
|
sequence của strings;
required Danh sách các chế độ cài đặt bản dựng mà quá trình chuyển đổi này có thể ghi. Đây phải là một siêu tập hợp của tập hợp khoá của từ điển do quá trình chuyển đổi này trả về. |