cấu hình

Đây là một mô-đun cấp cao nhất để tạo quá trình chuyển đổi cấu hình và mô tả chế độ cài đặt bản dựng, mô tả loại chế độ cài đặt bản dựng (nếu có) mà một quy tắc là.

ví dụ: quy tắc sau được đánh dấu là chế độ cài đặt bản dựng bằng cách đặt tham số build_setting của hàm rule(). Cụ thể, đây là chế độ cài đặt bản dựng thuộc loại int và là một flag, có nghĩa là chế độ cài đặt bản dựng này có thể gọi được trên dòng lệnh.

  my_rule = rule(
    implementation = _impl,
    build_setting = config.int(flag = True),
    ...
  )

Hội viên

bool

BuildSetting config.bool(*, flag=False)

Chế độ cài đặt bản dựng thuộc loại bool

Tham số

Tham số Mô tả
flag bool; giá trị mặc định là False
Cho biết chế độ cài đặt bản dựng này có thể gọi được trên dòng lệnh hay không.

exec

ExecTransitionFactory config.exec(exec_group=None)

Tạo quá trình chuyển đổi thực thi.

Tham số

Tham số Mô tả
exec_group string; hoặc None; giá trị mặc định là None
Tên của nhóm thực thi mà quá trình chuyển đổi này sẽ sử dụng nền tảng thực thi. Nếu không được cung cấp, quá trình chuyển đổi thực thi này sẽ sử dụng nền tảng thực thi mặc định của mục tiêu.

int

BuildSetting config.int(*, flag=False)

Chế độ cài đặt bản dựng thuộc loại số nguyên

Tham số

Tham số Mô tả
flag bool; giá trị mặc định là False
Cho biết chế độ cài đặt bản dựng này có thể gọi được trên dòng lệnh hay không.

none

transition config.none()

Tạo quá trình chuyển đổi giúp xoá tất cả cấu hình, huỷ đặt tất cả cờ. Dành cho trường hợp phần phụ thuộc chỉ có dữ liệu và không chứa mã cần được xây dựng, nhưng chỉ nên được phân tích một lần.

string

BuildSetting config.string(*, flag=False, allow_multiple=False)

Chế độ cài đặt bản dựng thuộc loại chuỗi

Tham số

Tham số Mô tả
flag bool; giá trị mặc định là False
Cho biết chế độ cài đặt bản dựng này có thể gọi được trên dòng lệnh hay không.
allow_multiple bool; giá trị mặc định là False
Không dùng nữa, hãy sử dụng chế độ cài đặt string_list với repeatable = True thay thế. Nếu được đặt, cờ này có thể được đặt nhiều lần trên dòng lệnh. Giá trị của cờ khi được truy cập trong quá trình chuyển đổi và hàm triển khai chế độ cài đặt bản dựng sẽ là một danh sách chuỗi. Cả thứ tự chèn và giá trị lặp lại đều được duy trì. Danh sách này có thể được xử lý sau trong hàm triển khai chế độ cài đặt bản dựng nếu bạn muốn có hành vi khác.

string_list

BuildSetting config.string_list(*, flag=False, repeatable=False)

Chế độ cài đặt bản dựng thuộc loại danh sách chuỗi. Trên dòng lệnh, hãy truyền một danh sách bằng cách sử dụng giá trị được phân tách bằng dấu phẩy như --//my/setting=foo,bar.

Tham số

Tham số Mô tả
flag bool; giá trị mặc định là False
Cho biết chế độ cài đặt bản dựng này có thể gọi được trên dòng lệnh hay không.
repeatable bool; giá trị mặc định là False
Nếu được đặt, thay vì mong đợi một giá trị được phân tách bằng dấu phẩy, cờ này có thể được đặt nhiều lần trên dòng lệnh, trong đó mỗi giá trị riêng lẻ được coi là một chuỗi duy nhất để thêm vào giá trị danh sách. Cả thứ tự chèn và giá trị lặp lại đều được duy trì. Danh sách này có thể được xử lý sau trong hàm triển khai chế độ cài đặt bản dựng nếu bạn muốn có hành vi khác.

string_set

BuildSetting config.string_set(*, flag=False, repeatable=False)

Chế độ cài đặt bản dựng thuộc loại tập hợp chuỗi. Giá trị của chế độ cài đặt này sẽ là một tập hợp chuỗi trong Starlark. Trên dòng lệnh, hãy truyền một tập hợp bằng cách sử dụng giá trị được phân tách bằng dấu phẩy như --//my/setting=foo,bar.

Không giống như string_list, thứ tự của các phần tử không quan trọng và chỉ một thực thể của mỗi phần tử được duy trì. Bạn nên sử dụng string_list cho các cờ không cần các thuộc tính này vì có thể cải thiện hiệu suất bản dựng bằng cách tránh việc phân nhánh cấu hình không cần thiết.

Tham số

Tham số Mô tả
flag bool; giá trị mặc định là False
Cho biết chế độ cài đặt bản dựng này có thể gọi được trên dòng lệnh hay không.
repeatable bool; giá trị mặc định là False
Nếu được đặt, thay vì mong đợi một giá trị được phân tách bằng dấu phẩy, cờ này có thể được đặt nhiều lần trên dòng lệnh, trong đó mỗi giá trị riêng lẻ được coi là một chuỗi duy nhất để thêm vào giá trị tập hợp. Chỉ một thực thể của các giá trị lặp lại được duy trì và thứ tự chèn không quan trọng.

mục tiêu

transition config.target()

Tạo quá trình chuyển đổi mục tiêu. Đây là quá trình chuyển đổi không hoạt động, dành cho trường hợp cần có đối tượng chuyển đổi nhưng không muốn thực sự thay đổi bất cứ điều gì. Tương đương với cfg = "target" trong attr.label().