应用切面的规则的属性的相关信息。
成员
属性
struct rule_attributes.attr用于访问属性值的结构体。这些值由用户提供(如果未提供,则使用默认值)。结构体的属性及其值的类型对应于提供给
rule
函数的 attrs
字典的键和值。查看使用示例。
exec_groups
ExecGroupCollection rule_attributes.exec_groups适用于应用该方面到规则的规则的执行组的集合,按名称编入索引。
可执行文件
struct rule_attributes.executable包含标签类型属性中定义的标记为
executable=True
的可执行文件的 struct
。结构体字段与属性名称相对应。结构体中的每个值都是 File
或 None
。如果规则中未指定可选属性,则相应的结构体值为 None
。如果标签类型未标记为 executable=True
,则不会生成相应的结构体字段。查看使用示例。
文件
struct rule_attributes.file包含标签类型属性中定义的文件(标记为
allow_single_file
)的 struct
。结构体字段与属性名称相对应。结构体值始终为 File
或 None
。如果规则中未指定可选属性,则相应的结构体值为 None
。如果标签类型未标记为 allow_single_file
,则系统不会生成相应的结构体字段。它是以下库的快捷方式:list(ctx.attr.<ATTR>.files)[0]换句话说,使用
file
访问依赖项的(单数)默认输出。查看使用示例。
文件
struct rule_attributes.files包含标签或标签列表类型属性中定义的文件的
struct
。结构体字段与属性名称相对应。结构体值为 File
的 list
。它是以下库的快捷方式:[f for t in ctx.attr.<ATTR> for f in t.files]换句话说,使用
files
访问依赖项的 默认输出。查看使用示例。
kind
string rule_attributes.kind规则的类型,例如“cc_library”
工具链
ToolchainContext rule_attributes.toolchains要应用该方面到哪个规则的默认执行组的工具链。