การกำหนดค่า

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

นี่คือโมดูลระดับบนสุดสำหรับสร้างการเปลี่ยนการกำหนดค่าและตัวอธิบายการตั้งค่าบิลด์ ซึ่งจะอธิบายว่ากฎเป็นการตั้งค่าบิลด์ประเภทใด (หากมี)

เช่น กฎต่อไปนี้ได้รับการทําเครื่องหมายเป็นการตั้งค่าบิลด์โดยการตั้งค่าพารามิเตอร์ build_setting ของฟังก์ชัน rule() กล่าวโดยละเอียดคือ การตั้งค่าบิลด์ประเภท int และเป็น flag ซึ่งหมายความว่าการตั้งค่าบิลด์นี้เรียกใช้ได้ในบรรทัดคำสั่ง

  my_rule = rule(
    implementation = _impl,
    build_setting = config.int(flag = True),
    ...
  )

สมาชิก

บูลีน

BuildSetting config.bool(flag=False)

การตั้งค่าบิลด์ประเภทบูลีน

พารามิเตอร์

พารามิเตอร์ คำอธิบาย
flag bool; ค่าเริ่มต้นคือ False
การตั้งค่าบิลด์นี้เรียกใช้ในบรรทัดคำสั่งได้หรือไม่

exec

ExecTransitionFactory config.exec(exec_group=None)

สร้างการเปลี่ยนการดำเนินการ

พารามิเตอร์

พารามิเตอร์ คำอธิบาย
exec_group สตริง หรือ None ค่าเริ่มต้นคือ None
ชื่อของกลุ่ม exec ที่แพลตฟอร์มการดําเนินการจะใช้การเปลี่ยนนี้ หากไม่ระบุ การเปลี่ยนไปใช้การดําเนินการนี้จะใช้แพลตฟอร์มการดําเนินการเริ่มต้นของเป้าหมาย

int

BuildSetting config.int(flag=False)

การตั้งค่าบิลด์ประเภทจำนวนเต็ม

พารามิเตอร์

พารามิเตอร์ คำอธิบาย
flag bool; ค่าเริ่มต้นคือ False
การตั้งค่าบิลด์นี้เรียกใช้ในบรรทัดคำสั่งได้หรือไม่

ไม่มี

transition config.none()

สร้างการเปลี่ยนซึ่งจะนำการกำหนดค่าทั้งหมดออกและยกเลิกการตั้งค่า Flag ทั้งหมด มีไว้สำหรับกรณีที่ทรัพยากร Dependency เป็นข้อมูลเท่านั้นและไม่มีโค้ดที่ต้องสร้าง แต่ควรวิเคราะห์เพียงครั้งเดียว

สตริง

BuildSetting config.string(flag=False, allow_multiple=False)

การตั้งค่าบิลด์ที่เป็นสตริง

พารามิเตอร์

พารามิเตอร์ คำอธิบาย
flag bool; ค่าเริ่มต้นคือ False
การตั้งค่าบิลด์นี้เรียกใช้ในบรรทัดคำสั่งได้หรือไม่
allow_multiple bool; ค่าเริ่มต้นคือ False
เลิกใช้งานแล้ว ให้ใช้การตั้งค่า string_list กับ repeatable = True แทน หากตั้งค่าไว้ ระบบจะอนุญาตให้ตั้งค่า Flag นี้หลายครั้งในบรรทัดคำสั่ง ค่าของ Flag ที่เข้าถึงได้ในการเปลี่ยนและฟังก์ชันการใช้งานการตั้งค่าการสร้างจะเป็นรายการสตริง ระบบจะเก็บทั้งใบสั่งซื้อการใส่โฆษณาและค่าที่ซ้ำกันไว้ รายการนี้สามารถประมวลผลในภายหลังได้ในฟังก์ชันการใช้งานการตั้งค่าบิลด์ หากต้องการลักษณะการทำงานที่แตกต่างออกไป

string_list

BuildSetting config.string_list(flag=False, repeatable=False)

การตั้งค่าบิลด์ประเภทสตริงลิสต์ ในบรรทัดคำสั่ง ให้ส่งรายการโดยใช้ค่าที่คั่นด้วยคอมมา เช่น --//my/setting=foo,bar

พารามิเตอร์

พารามิเตอร์ คำอธิบาย
flag bool; ค่าเริ่มต้นคือ False
การตั้งค่าบิลด์นี้เรียกใช้ในบรรทัดคำสั่งได้หรือไม่
repeatable bool; ค่าเริ่มต้นคือ False
หากตั้งค่า ระบบจะอนุญาตให้ตั้งค่า Flag นี้หลายครั้งในบรรทัดคำสั่ง โดยแต่ละค่าจะได้รับการจัดการเป็นสตริงเดียวเพื่อเพิ่มลงในค่าลิสต์แทนที่จะคาดหวังค่าที่คั่นด้วยคอมมา ระบบจะเก็บทั้งใบสั่งซื้อการใส่โฆษณาและค่าที่ซ้ำกันไว้ รายการนี้สามารถประมวลผลในภายหลังได้ในฟังก์ชันการใช้งานการตั้งค่าบิลด์ หากต้องการลักษณะการทำงานที่แตกต่างออกไป

เป้าหมาย

transition config.target()

สร้างการเปลี่ยนเป้าหมาย นี่เป็นทรานซิชันที่ไม่มีการดำเนินการใดๆ ซึ่งมีไว้สำหรับกรณีที่ต้องใช้ออบเจ็กต์ทรานซิชัน แต่ไม่ต้องการเปลี่ยนอะไรเลย เทียบเท่ากับ cfg = "target" ใน attr.label()