Informações sobre os atributos de uma regra a que um aspecto é aplicado.
Membros
attr
struct rule_attributes.attrUm struct para acessar os valores dos atributos. Os valores são fornecidos pelo usuário. Caso contrário, um valor padrão é usado. Os atributos do struct e os tipos dos valores correspondem às chaves e aos valores do dicionário
attrs
fornecido à função rule
. Confira um exemplo de uso.
Executável
struct rule_attributes.executableUm
struct
que contém arquivos executáveis definidos em atributos de tipo de rótulo marcados como executable=True
. Os campos do struct correspondem aos nomes dos atributos. Cada valor na struct é um File
ou None
. Se um atributo opcional não for especificado na regra, o valor do struct correspondente será None
. Se um tipo de rótulo não estiver marcado como executable=True
, nenhum campo de struct correspondente será gerado. Confira um exemplo de uso.
arquivo
struct rule_attributes.fileUm
struct
que contém arquivos definidos em atributos de tipo de rótulo marcados como allow_single_file
. Os campos do struct correspondem aos nomes dos atributos. O valor da estrutura é sempre File
ou None
. Se um atributo opcional não for especificado na regra, o valor do struct correspondente será None
. Se um tipo de rótulo não estiver marcado como allow_single_file
, nenhum campo de struct correspondente será gerado. É um atalho para:list(ctx.attr.<ATTR>.files)[0]Em outras palavras, use
file
para acessar a saída padrão (singular) de uma dependência. Confira um exemplo de uso.
arquivos
struct rule_attributes.filesUm
struct
que contém arquivos definidos em atributos do tipo rótulo ou lista de rótulos. Os campos do struct correspondem aos nomes dos atributos. Os valores da estrutura são list
de File
s. É um atalho para:[f for t in ctx.attr.<ATTR> for f in t.files]Em outras palavras, use
files
para acessar as saídas padrão de uma dependência. Confira um exemplo de uso.
kind
string rule_attributes.kindO tipo de regra, como "cc_library"