แอตทริบิวต์กฎ

รายงานปัญหา ดูแหล่งที่มา รุ่น Nightly · 8.0 7.4 7.3 · 7.2 · 7.1 · 7.0 · 6.5

ข้อมูลเกี่ยวกับแอตทริบิวต์ของกฎที่มีการใช้แง่มุม

สมาชิก

attr

struct rule_attributes.attr

โครงสร้างสําหรับเข้าถึงค่าของแอตทริบิวต์ ผู้ใช้เป็นผู้ระบุค่า (หากไม่ระบุ ระบบจะใช้ค่าเริ่มต้น) แอตทริบิวต์ของโครงสร้างและประเภทของค่าจะสอดคล้องกับคีย์และค่าของ attrs dict ที่ส่งไปยังฟังก์ชัน rule ดูตัวอย่างการใช้งาน

ไฟล์ปฏิบัติการ

struct rule_attributes.executable

struct ที่มีไฟล์ปฏิบัติการซึ่งกำหนดไว้ในแอตทริบิวต์ประเภทป้ายกำกับซึ่งทําเครื่องหมายเป็น executable=True ฟิลด์ Struct จะสอดคล้องกับชื่อแอตทริบิวต์ ค่าแต่ละค่าในโครงสร้างจะเป็น File หรือ None หากไม่ได้ระบุแอตทริบิวต์ที่ไม่บังคับในกฎ ค่า Struct ที่เกี่ยวข้องจะเป็น None หากไม่ได้ทําเครื่องหมายประเภทป้ายกํากับเป็น executable=True ระบบจะไม่สร้างช่อง Struct ที่สอดคล้องกัน ดูตัวอย่างการใช้งาน

ไฟล์

struct rule_attributes.file

struct ที่มีไฟล์ที่ระบุไว้ในแอตทริบิวต์ประเภทป้ายกำกับซึ่งทำเครื่องหมายเป็น allow_single_file ฟิลด์ Struct จะสอดคล้องกับชื่อแอตทริบิวต์ ค่า Struct ต้องเป็น File หรือ None เสมอ หากไม่ได้ระบุแอตทริบิวต์ที่ไม่บังคับในกฎ ค่า Struct ที่เกี่ยวข้องจะเป็น None หากไม่ได้ทําเครื่องหมายประเภทป้ายกํากับเป็น allow_single_file ระบบจะไม่สร้างช่อง Struct ที่สอดคล้องกัน ซึ่งเป็นทางลัดสำหรับการดำเนินการต่อไปนี้
list(ctx.attr.<ATTR>.files)[0]
กล่าวคือ ใช้ file เพื่อเข้าถึงเอาต์พุตเริ่มต้น (รายการเดียว) ของข้อกำหนด ดูตัวอย่างการใช้งาน

ไฟล์

struct rule_attributes.files

struct ที่มีไฟล์ที่กําหนดไว้ในแอตทริบิวต์ประเภทป้ายกํากับหรือรายการป้ายกํากับ ฟิลด์ Struct จะสอดคล้องกับชื่อแอตทริบิวต์ ค่า Struct คือ list ของ File ซึ่งเป็นทางลัดสำหรับการดำเนินการต่อไปนี้
[f for t in ctx.attr.<ATTR> for f in t.files]
กล่าวคือ ใช้ files เพื่อเข้าถึง เอาต์พุตเริ่มต้นของข้อกําหนด ดูตัวอย่างการใช้งาน

ชนิด

string rule_attributes.kind

ประเภทของกฎ เช่น "cc_library"