有关应用于某个方面规则的属性的信息。
成员
attr
struct rule_attributes.attr用于访问属性值的结构体。这些值由用户提供(如果未提供,则使用默认值)。结构体的属性及其值的类型与提供给
rule
函数的 attrs
字典的键和值相对应。查看使用示例。
可执行文件
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”