Información sobre los atributos de una regla a la que se aplica un aspecto.
Miembros
attr
struct rule_attributes.attrEs una estructura para acceder a los valores de los atributos. El usuario proporciona los valores (de lo contrario, se usa un valor predeterminado). Los atributos de la struct y los tipos de sus valores corresponden a las claves y los valores del dict
attrs
proporcionado a la función rule
. Consulta el ejemplo de uso.
ejecutable
struct rule_attributes.executableUn
struct
que contiene archivos ejecutables definidos en los atributos de tipo de etiqueta marcados como executable=True
. Los campos de la struct corresponden a los nombres de los atributos. Cada valor de la estructura es File
o None
. Si no se especifica un atributo opcional en la regla, el valor de la struct correspondiente es None
. Si un tipo de etiqueta no está marcado como executable=True
, no se genera ningún campo de struct correspondiente. Consulta el ejemplo de uso.
archivo
struct rule_attributes.fileUn
struct
que contiene archivos definidos en los atributos de tipo de etiqueta marcados como allow_single_file
. Los campos de la struct corresponden a los nombres de los atributos. El valor de la struct siempre es un File
o None
. Si no se especifica un atributo opcional en la regla, el valor de la struct correspondiente es None
. Si un tipo de etiqueta no está marcado como allow_single_file
, no se genera ningún campo de struct correspondiente. Es un atajo para lo siguiente:list(ctx.attr.<ATTR>.files)[0]En otras palabras, usa
file
para acceder al resultado predeterminado (singular) de una dependencia. Consulta el ejemplo de uso.
archivos
struct rule_attributes.filesUn
struct
que contiene archivos definidos en los atributos de tipo label o label list. Los campos de la struct corresponden a los nombres de los atributos. Los valores de la estructura son list
de File
. Es un atajo para lo siguiente:[f for t in ctx.attr.<ATTR> for f in t.files]En otras palabras, usa
files
para acceder a las salidas predeterminadas de una dependencia. Consulta el ejemplo de uso.
kind
string rule_attributes.kindEs el tipo de regla, como "cc_library".