規則屬性

回報問題 查看來源 Nightly · 8.3 · 8.2 · 8.1 · 8.0 · 7.6

套用層面規則的屬性相關資訊。

成員

attr

struct rule_attributes.attr

用來存取屬性值的結構體。這些值由使用者提供 (如未提供,則會使用預設值)。結構的屬性和值的類型,對應於提供給 rule 函式attrs dict 的鍵和值。查看使用範例

exec_groups

ExecGroupCollection rule_attributes.exec_groups

規則可用的執行群組集合 (適用於套用層面),依名稱編列索引。

執行檔

struct rule_attributes.executable

struct,其中包含標示為 executable=True標籤類型屬性中定義的可執行檔。結構體欄位對應屬性名稱。結構體中的每個值都是 FileNone。如果規則中未指定選填屬性,對應的結構體值為 None。如果標籤類型未標示為 executable=True,系統就不會產生對應的 struct 欄位。查看使用範例

檔案

struct rule_attributes.file

包含在標示為 allow_single_file標籤類型屬性中定義的檔案。struct結構體欄位對應屬性名稱。結構體值一律為 FileNone。如果規則中未指定選填屬性,對應的結構體值為 None。如果標籤類型未標示為 allow_single_file,系統就不會產生對應的 struct 欄位。這是下列項目的捷徑:
list(ctx.attr.<ATTR>.files)[0]
換句話說,使用 file 存取依附元件的 (單一) 預設輸出內容查看使用範例

檔案

struct rule_attributes.files

包含 標籤標籤清單類型屬性中定義的檔案。struct結構體欄位對應屬性名稱。結構值是 listFile。這是下列項目的捷徑:
[f for t in ctx.attr.<ATTR> for f in t.files]
換句話說,使用 files 存取依附元件的 預設輸出內容查看使用範例

kind

string rule_attributes.kind

規則類型,例如「cc_library」

工具鏈

ToolchainContext rule_attributes.toolchains

適用於套用構面的規則預設執行群組的工具鍊。

var

dict rule_attributes.var

設定變數的字典 (字串到字串)。