在 ctx.actions.expand_template() 中使用的类似 Args 的结构,允许将值的评估延迟到执行阶段。
成员
add
TemplateDict TemplateDict.add(key, value)
参数
参数 | 说明 |
---|---|
key
|
string;
required 一个字符串键 |
value
|
string;
required 字符串值 |
add_joined
TemplateDict TemplateDict.add_joined(key, values, *, join_with, map_each, uniquify=False, format_joined=None, allow_closure=False)
参数
参数 | 说明 |
---|---|
key
|
string;
必需 字符串键 |
values
|
depset;
必需 要联接的项所在的 depset。 |
join_with
|
string;
必需 用于将通过应用 map_each 获取的字符串联接在一起的分隔符字符串,方法与 string.join() 相同。
|
map_each
|
Callable;
必需 一个 Starlark 函数,接受单个参数并返回字符串、 None 或字符串列表。此函数应用于 values 参数中指定的 Depset 中的每一项
|
uniquify
|
bool;
默认为 False 如果为 true,系统会忽略从 values 派生的重复字符串。系统只会保留每个字符串的首次出现。通常不需要此功能,因为 Depset 已经省略了重复项,但如果 map_each 针对多个项发出相同的字符串,则此功能非常有用。 |
format_joined
|
string;或 None ;默认值为 None 适用于联接字符串的可选格式字符串模式。格式字符串中必须只有一个“%s”占位符。 |
allow_closure
|
bool;
默认为 False 如果为 true,则允许在函数参数(如 map_each )中使用闭包。通常情况下,这并不必要,并且可能会导致在执行阶段保留分析阶段的大型数据结构。
|