例如:以下规则通过设置 build_setting 参数标记为构建设置。rule()具体来说,它是 int 类型的构建设置,并且是一个 flag,这意味着此构建设置可在命令行中调用。
my_rule = rule(
implementation = _impl,
build_setting = config.int(flag = True),
...
)成员
bool
BuildSetting config.bool(*, flag=False)
参数
| 参数 | 说明 |
|---|---|
flag
|
bool;
默认值为 False此构建设置是否可在命令行中调用。 |
exec
ExecTransitionFactory config.exec(exec_group=None)
参数
| 参数 | 说明 |
|---|---|
exec_group
|
字符串;或 None;
默认值为 None此转换将使用的执行平台的 exec 组的名称。如果未提供,此 exec 转换将使用目标默认执行平台。 |
int
BuildSetting config.int(*, flag=False)
参数
| 参数 | 说明 |
|---|---|
flag
|
bool;
默认值为 False此构建设置是否可在命令行中调用。 |
none
transition config.none()
string
BuildSetting config.string(*, flag=False, allow_multiple=False)
参数
| 参数 | 说明 |
|---|---|
flag
|
bool;
默认值为 False此构建设置是否可在命令行中调用。 |
allow_multiple
|
bool;
默认值为 False已废弃,请改用 string_list 设置。repeatable = True如果设置,则允许在命令行中多次设置此标志。在转换和构建设置实现函数中访问的标志的值将是字符串列表。插入顺序和重复值都会保留。如果需要不同的行为,可以在构建设置实现函数中对该列表进行后处理。
|
string_list
BuildSetting config.string_list(*, flag=False, repeatable=False)
--//my/setting=foo,bar)传递列表。
参数
| 参数 | 说明 |
|---|---|
flag
|
bool;
默认值为 False此构建设置是否可在命令行中调用。 |
repeatable
|
bool;
默认值为 False如果设置,则允许在命令行中多次设置此标志,而不是预期使用英文逗号分隔的值,并且每个单独的值都将被视为要添加到列表值的单个字符串。插入顺序和重复值都会保留。如果需要不同的行为,可以在构建设置实现函数中对该列表进行后处理。 |
string_set
BuildSetting config.string_set(*, flag=False, repeatable=False)
--//my/setting=foo,bar)传递集合。与 string_list 不同,元素的顺序无关紧要,并且仅保留每个元素的单个实例。对于不需要这些属性的标志,建议使用此设置,因为它可以通过避免不必要的配置分支来提高构建性能。
string_list
参数
| 参数 | 说明 |
|---|---|
flag
|
bool;
默认值为 False此构建设置是否可在命令行中调用。 |
repeatable
|
bool;
默认值为 False如果设置,则允许在命令行中多次设置此标志,而不是预期使用英文逗号分隔的值,并且每个单独的值都将被视为要添加到集合值的单个字符串。仅保留重复值的单个实例,并且插入顺序无关紧要。 |
target
transition config.target()
cfg = "target" 中的 attr.label().