rule_attributes [ルール属性]

アスペクトが適用されるルールの属性に関する情報。

メンバー

Attr

struct rule_attributes.attr

属性の値にアクセスするための構造体。値はユーザーが指定します(指定されていない場合はデフォルト値が使用されます)。構造体の属性とその値の型は、rule 関数に渡される attrs dict のキーと値に対応しています。使用例をご覧ください

実行可能ファイル

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 を使用して、依存関係の(単一の)デフォルト出力にアクセスします。使用例をご覧ください

files

struct rule_attributes.files

ラベルタイプまたはラベルリストタイプの属性で定義されたファイルを含む struct。構造体フィールドは属性名に対応しています。構造体の値は Filelist です。
[f for t in ctx.attr.<ATTR> for f in t.files]
のショートカットです。つまり、files を使用して依存関係のデフォルト出力にアクセスします。使用例をご覧ください

kind

string rule_attributes.kind

ルールの種類(「cc_library」など)