Biểu thị hiệu ứng chuyển đổi cấu hình trên cạnh của phần phụ thuộc. Ví dụ: nếu //package:foo
phụ thuộc vào //package:bar
khi 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: hiệu ứng chuyển đổi của //package:bar
sẽ được xác định theo hiệu ứng chuyển đổi của //package:foo
, tuỳ thuộc vào hàm được xác định bằng đối tượng chuyển đổi.
Hội viên
chuyển đổi
transition transition(implementation, inputs, outputs)Một quá trình chuyển đổi đọc một tập hợp chế độ cài đặt bản dựng đầu vào và ghi một tập hợp chế độ cài đặt bản dựng đầu ra.
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
|
có thể gọi;
bắt buộc Hàm triển khai quá trình chuyển đổi này. Hàm này luôn có 2 tham số: settings và attr . Tham số settings là một từ điển có tập hợp các khoá được xác định theo thông 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
|
trình tự của chuỗi;
bắt buộc 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 được. Lớp này sẽ trở thành tập hợp khoá của tham số cài đặt của tham số hàm triển khai. |
outputs
|
trình tự của chuỗi;
bắt buộc Danh sách các chế độ cài đặt bản dựng có thể được ghi bằng quá trình chuyển đổi này. Đây phải là tập hợp con của tập hợp khoá của từ điển do quá trình chuyển đổi này trả về. |