นี่คือโมดูลระดับบนสุดสำหรับสร้างการเปลี่ยนการกำหนดค่าและตัวอธิบายการตั้งค่าบิลด์ ซึ่งจะอธิบายว่ากฎเป็นการตั้งค่าบิลด์ประเภทใด (หากมี)
เช่น กฎต่อไปนี้ได้รับการทําเครื่องหมายเป็นการตั้งค่าบิลด์โดยการตั้งค่าพารามิเตอร์ 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()