アスペクトが適用されるルールの属性に関する情報。
メンバー
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.fileslabel または label list タイプの属性で定義されたファイルを含む
struct
。構造体フィールドは属性名に対応しています。構造体の値は File
の list
です。これは次のショートカットです。[f for t in ctx.attr.<ATTR> for f in t.files]つまり、
files
を使用して依存関係の デフォルト出力にアクセスします。使用例をご覧ください。
kind
string rule_attributes.kindルールの種類(cc_library など)