แอตทริบิวต์

นี่คือโมดูลระดับบนสุดสำหรับกำหนดสคีมาแอตทริบิวต์ของกฎหรือแง่มุมต่างๆ แต่ละฟังก์ชันจะแสดงออบเจ็กต์ที่แสดงสคีมาของแอตทริบิวต์เดียว ออบเจ็กต์เหล่านี้ใช้เป็นค่าของอาร์กิวเมนต์ attrs ในพจนานุกรมของ rule() และ aspect()

ดูข้อมูลเพิ่มเติมเกี่ยวกับการกำหนดและการใช้แอตทริบิวต์ได้ในหน้ากฎ

สมาชิก

bool

Attribute attr.bool(default=False, doc='', mandatory=False)

สร้างสคีมาสำหรับแอตทริบิวต์บูลีน

พารามิเตอร์

พารามิเตอร์ คำอธิบาย
default ค่าเริ่มต้น = เท็จ
ค่าเริ่มต้นที่จะใช้หากไม่มีการระบุค่าสำหรับแอตทริบิวต์นี้เมื่อเริ่มต้นกฎ
doc ค่าเริ่มต้น = ''
คำอธิบายของแอตทริบิวต์ที่เครื่องมือสร้างเอกสารประกอบได้
mandatory ค่าเริ่มต้น = เท็จ
หากเป็น "จริง" คุณต้องระบุค่าอย่างชัดเจน (แม้ว่าจะมี default ก็ตาม)

int

Attribute attr.int(default=0, doc='', mandatory=False, values=[])

สร้างสคีมาสำหรับแอตทริบิวต์จำนวนเต็ม ค่าต้องอยู่ในช่วง 32 บิตแบบมีเครื่องหมาย

พารามิเตอร์

พารามิเตอร์ คำอธิบาย
default ค่าเริ่มต้น = 0
ค่าเริ่มต้นที่จะใช้หากไม่มีการระบุค่าสำหรับแอตทริบิวต์นี้เมื่อเริ่มต้นกฎ
doc ค่าเริ่มต้น = ''
คำอธิบายของแอตทริบิวต์ที่เครื่องมือสร้างเอกสารประกอบได้
mandatory ค่าเริ่มต้น = เท็จ
หากเป็น "จริง" คุณต้องระบุค่าอย่างชัดเจน (แม้ว่าจะมี default ก็ตาม)
values sequence of ints; ค่าเริ่มต้น = []
รายการค่าที่อนุญาตสำหรับแอตทริบิวต์ ระบบจะแสดงข้อผิดพลาดหากมีการระบุค่าอื่น

int_list

Attribute attr.int_list(mandatory=False, allow_empty=True, *, default=[], doc='')

สร้างสคีมาสำหรับแอตทริบิวต์รายการจำนวนเต็ม องค์ประกอบแต่ละรายการต้องอยู่ในช่วง 32 บิตแบบมีเครื่องหมาย

พารามิเตอร์

พารามิเตอร์ คำอธิบาย
mandatory ค่าเริ่มต้น = เท็จ
หากเป็น "จริง" คุณต้องระบุค่าอย่างชัดเจน (แม้ว่าจะมี default ก็ตาม)
allow_empty ค่าเริ่มต้น = จริง
จริง หากแอตทริบิวต์เว้นว่างไว้ได้
default sequence of ints; ค่าเริ่มต้น = []
ค่าเริ่มต้นที่จะใช้หากไม่มีการระบุค่าสำหรับแอตทริบิวต์นี้เมื่อเริ่มต้นกฎ
doc ค่าเริ่มต้น = ''
คำอธิบายของแอตทริบิวต์ที่เครื่องมือสร้างเอกสารประกอบได้

ป้ายกำกับ

Attribute attr.label(default=None, doc='', executable=False, allow_files=None, allow_single_file=None, mandatory=False, providers=[], allow_rules=None, cfg=None, aspects=[])

สร้างสคีมาสำหรับแอตทริบิวต์ป้ายกำกับ นี่คือแอตทริบิวต์การอ้างอิง

แอตทริบิวต์นี้มีค่า Label ที่ไม่ซ้ำกัน หากมีการระบุสตริงแทน Label ระบบจะแปลงสตริงโดยใช้ตัวสร้างป้ายกำกับ ส่วนที่เกี่ยวข้องของเส้นทางป้ายกำกับ รวมถึงที่เก็บ (อาจเปลี่ยนชื่อแล้ว) ได้รับการแก้ไขตามแพ็กเกจของเป้าหมายที่สร้างอินสแตนซ์แล้ว

ขณะวิเคราะห์ (ภายในฟังก์ชันการใช้งานของกฎ) เมื่อดึงค่าแอตทริบิวต์จาก ctx.attr ระบบจะแทนที่ป้ายกำกับด้วย Target ที่เกี่ยวข้อง ซึ่งจะช่วยให้คุณเข้าถึงผู้ให้บริการทรัพยากร Dependency ของเป้าหมายปัจจุบัน

นอกเหนือจากไฟล์ต้นฉบับทั่วไปแล้ว แอตทริบิวต์ชนิดนี้มักใช้เพื่ออ้างถึงเครื่องมือ เช่น คอมไพเลอร์ เครื่องมือดังกล่าวถือเป็นทรัพยากร Dependency เช่นเดียวกับไฟล์ต้นฉบับ เพื่อหลีกเลี่ยงไม่ให้ผู้ใช้ระบุป้ายกำกับของเครื่องมือทุกครั้งที่ใช้กฎในไฟล์ BUILD คุณสามารถทำฮาร์ดโค้ดป้ายกำกับของเครื่องมือ Canonical เป็นค่า default ของแอตทริบิวต์นี้ หากไม่ต้องการให้ผู้ใช้ลบล้างค่าเริ่มต้นนี้ คุณสามารถทำให้แอตทริบิวต์เป็นแบบส่วนตัวได้โดยตั้งชื่อที่ขึ้นต้นด้วยขีดล่าง โปรดดูข้อมูลเพิ่มเติมในหน้ากฎ

พารามิเตอร์

พารามิเตอร์ คำอธิบาย
default Label; or string; or LateBoundDefault; or NativeComputedDefault; or function; or None; ค่าเริ่มต้น = ไม่มี
ค่าเริ่มต้นที่จะใช้หากไม่มีการระบุค่าสำหรับแอตทริบิวต์นี้เมื่อเริ่มต้นกฎ ใช้สตริงหรือฟังก์ชัน Label เพื่อระบุค่าเริ่มต้น เช่น attr.label(default = "//a:b")
doc ค่าเริ่มต้น = ''
คำอธิบายของแอตทริบิวต์ที่เครื่องมือสร้างเอกสารประกอบได้
executable default = False
จริงหากทรัพยากร Dependency ต้องเรียกใช้ได้ ซึ่งหมายความว่าป้ายกำกับต้องอ้างถึงไฟล์ปฏิบัติการหรือกฎที่แสดงผลไฟล์ปฏิบัติการ เข้าถึงป้ายกำกับด้วย ctx.executable.<attribute_name>
allow_files bool; or sequence of strings; or None; ค่าเริ่มต้น = ไม่มี
ระบุว่าอนุญาตเป้าหมาย File หรือไม่ อาจเป็น True, False (ค่าเริ่มต้น) หรือรายการนามสกุลไฟล์ที่อนุญาต (เช่น [".cc", ".cpp"])
allow_single_file ค่าเริ่มต้น = ไม่มี
ค่านี้คล้ายกับ allow_files โดยมีข้อจำกัดว่าป้ายกำกับต้องสอดคล้องกับไฟล์ไฟล์เดียว เข้าถึงได้ผ่าน ctx.file.<attribute_name>
mandatory ค่าเริ่มต้น = เท็จ
หากเป็น "จริง" คุณต้องระบุค่าอย่างชัดเจน (แม้ว่าจะมี default ก็ตาม)
providers ค่าเริ่มต้น = []
ผู้ให้บริการที่ต้องมาจากทรัพยากร Dependency ที่ปรากฏในแอตทริบิวต์นี้

รูปแบบของอาร์กิวเมนต์นี้คือรายการรายชื่อผู้ให้บริการ - ออบเจ็กต์ *Info รายการที่แสดงผลโดย provider() (หรือชื่อสตริงในกรณีของผู้ให้บริการเดิม) ทรัพยากร Dependency ต้องแสดงผลผู้ให้บริการทั้งหมดที่กล่าวถึงในรายการภายในอย่างน้อย 1 รายการ เพื่อความสะดวก อาร์กิวเมนต์นี้อาจเป็นรายการผู้ให้บริการระดับเดียว ซึ่งในกรณีนี้จะรวมอยู่ในรายการด้านนอกที่มีองค์ประกอบเดียว

allow_rules sequence of strings; or None; default = ไม่มี
อนุญาตเป้าหมายกฎใด (ชื่อคลาส) เลิกใช้งานไปแล้ว (เก็บไว้เพื่อความเข้ากันได้เท่านั้น) โปรดใช้ผู้ให้บริการแทน
cfg ค่าเริ่มต้น = ไม่มี
การกำหนดค่าของแอตทริบิวต์ อาจเป็น "exec" ซึ่งบ่งชี้ว่าทรัพยากร Dependency สร้างขึ้นสำหรับ execution platform หรือ "target" ซึ่งระบุว่าทรัพยากร Dependency สร้างขึ้นสำหรับ target platform ตัวอย่างโดยทั่วไปของความแตกต่างคือเมื่อสร้างแอปบนอุปกรณ์เคลื่อนที่ โดยที่ target platform คือ Android หรือ iOS ขณะที่ execution platform คือ Linux, macOS หรือ Windows ต้องระบุพารามิเตอร์นี้หาก executable เป็น "จริง" เพื่อป้องกันการสร้างเครื่องมือโฮสต์โดยไม่ได้ตั้งใจในการกำหนดค่าเป้าหมาย "target" ไม่มีผลทางความหมาย ดังนั้นอย่าตั้งค่าเมื่อ executable เป็น "เท็จ" เว้นแต่จะช่วยให้เจตนาของคุณชัดเจนได้
aspects sequence of Aspects; ค่าเริ่มต้น = []
แง่มุมที่ควรใช้กับทรัพยากร Dependency หรือทรัพยากร Dependency ที่ระบุโดยแอตทริบิวต์นี้

label_keyed_string_dict

Attribute attr.label_keyed_string_dict(allow_empty=True, *, default={}, doc='', allow_files=None, allow_rules=None, providers=[], flags=[], mandatory=False, cfg=None, aspects=[])

สร้างสคีมาสำหรับแอตทริบิวต์ที่มีพจนานุกรม โดยคีย์คือป้ายกำกับและค่าเป็นสตริง นี่คือแอตทริบิวต์การอ้างอิง

แอตทริบิวต์นี้มีค่า Label ที่ไม่ซ้ำกัน หากมีการระบุสตริงแทน Label ระบบจะแปลงสตริงโดยใช้ตัวสร้างป้ายกำกับ ส่วนที่เกี่ยวข้องของเส้นทางป้ายกำกับ รวมถึงที่เก็บ (อาจเปลี่ยนชื่อแล้ว) ได้รับการแก้ไขตามแพ็กเกจของเป้าหมายที่สร้างอินสแตนซ์แล้ว

ขณะวิเคราะห์ (ภายในฟังก์ชันการใช้งานของกฎ) เมื่อดึงค่าแอตทริบิวต์จาก ctx.attr ระบบจะแทนที่ป้ายกำกับด้วย Target ที่เกี่ยวข้อง ซึ่งจะช่วยให้คุณเข้าถึงผู้ให้บริการทรัพยากร Dependency ของเป้าหมายปัจจุบัน

พารามิเตอร์

พารามิเตอร์ คำอธิบาย
allow_empty ค่าเริ่มต้น = จริง
จริง หากแอตทริบิวต์เว้นว่างไว้ได้
default dict; or function; ค่าเริ่มต้น = {}
ค่าเริ่มต้นที่จะใช้หากไม่มีการระบุค่าสำหรับแอตทริบิวต์นี้เมื่อเริ่มต้นกฎ ใช้สตริงหรือฟังก์ชัน Label เพื่อระบุค่าเริ่มต้น เช่น attr.label_keyed_string_dict(default = {"//a:b": "value", "//a:c": "string"})
doc ค่าเริ่มต้น = ''
คำอธิบายของแอตทริบิวต์ที่เครื่องมือสร้างเอกสารประกอบได้
allow_files bool; or sequence of strings; or None; ค่าเริ่มต้น = ไม่มี
ระบุว่าอนุญาตเป้าหมาย File หรือไม่ อาจเป็น True, False (ค่าเริ่มต้น) หรือรายการนามสกุลไฟล์ที่อนุญาต (เช่น [".cc", ".cpp"])
allow_rules sequence of strings; or None; default = ไม่มี
อนุญาตเป้าหมายกฎใด (ชื่อคลาส) เลิกใช้งานไปแล้ว (เก็บไว้เพื่อความเข้ากันได้เท่านั้น) โปรดใช้ผู้ให้บริการแทน
providers ค่าเริ่มต้น = []
ผู้ให้บริการที่ต้องมาจากทรัพยากร Dependency ที่ปรากฏในแอตทริบิวต์นี้

รูปแบบของอาร์กิวเมนต์นี้คือรายการรายชื่อผู้ให้บริการ - ออบเจ็กต์ *Info รายการที่แสดงผลโดย provider() (หรือชื่อสตริงในกรณีของผู้ให้บริการเดิม) ทรัพยากร Dependency ต้องแสดงผลผู้ให้บริการทั้งหมดที่กล่าวถึงในรายการภายในอย่างน้อย 1 รายการ เพื่อความสะดวก อาร์กิวเมนต์นี้อาจเป็นรายการผู้ให้บริการระดับเดียว ซึ่งในกรณีนี้จะรวมอยู่ในรายการด้านนอกที่มีองค์ประกอบเดียว

flags sequence of strings; ค่าเริ่มต้น = []
เลิกใช้งานแล้วและจะถูกนำออก
mandatory ค่าเริ่มต้น = เท็จ
หากเป็น "จริง" คุณต้องระบุค่าอย่างชัดเจน (แม้ว่าจะมี default ก็ตาม)
cfg ค่าเริ่มต้น = ไม่มี
การกำหนดค่าของแอตทริบิวต์ อาจเป็น "exec" ซึ่งบ่งชี้ว่าทรัพยากร Dependency สร้างขึ้นสำหรับ execution platform หรือ "target" ซึ่งระบุว่าทรัพยากร Dependency สร้างขึ้นสำหรับ target platform ตัวอย่างโดยทั่วไปของความแตกต่างคือเมื่อสร้างแอปบนอุปกรณ์เคลื่อนที่ โดยที่ target platform คือ Android หรือ iOS ขณะที่ execution platform คือ Linux, macOS หรือ Windows
aspects sequence of Aspects; ค่าเริ่มต้น = []
แง่มุมที่ควรใช้กับทรัพยากร Dependency หรือทรัพยากร Dependency ที่ระบุโดยแอตทริบิวต์นี้

label_list

Attribute attr.label_list(allow_empty=True, *, default=[], doc='', allow_files=None, allow_rules=None, providers=[], flags=[], mandatory=False, cfg=None, aspects=[])

สร้างสคีมาสำหรับแอตทริบิวต์รายการป้ายกำกับ นี่คือแอตทริบิวต์การอ้างอิง

แอตทริบิวต์นี้มีค่า Label ที่ไม่ซ้ำกัน หากมีการระบุสตริงแทน Label ระบบจะแปลงสตริงโดยใช้ตัวสร้างป้ายกำกับ ส่วนที่เกี่ยวข้องของเส้นทางป้ายกำกับ รวมถึงที่เก็บ (อาจเปลี่ยนชื่อแล้ว) ได้รับการแก้ไขตามแพ็กเกจของเป้าหมายที่สร้างอินสแตนซ์แล้ว

ขณะวิเคราะห์ (ภายในฟังก์ชันการใช้งานของกฎ) เมื่อดึงค่าแอตทริบิวต์จาก ctx.attr ระบบจะแทนที่ป้ายกำกับด้วย Target ที่เกี่ยวข้อง ซึ่งจะช่วยให้คุณเข้าถึงผู้ให้บริการทรัพยากร Dependency ของเป้าหมายปัจจุบัน

พารามิเตอร์

พารามิเตอร์ คำอธิบาย
allow_empty ค่าเริ่มต้น = จริง
จริง หากแอตทริบิวต์เว้นว่างไว้ได้
default sequence of Labels; or function; ค่าเริ่มต้น = []
ค่าเริ่มต้นที่จะใช้หากไม่มีการระบุค่าสำหรับแอตทริบิวต์นี้เมื่อเริ่มต้นกฎ ใช้สตริงหรือฟังก์ชัน Label เพื่อระบุค่าเริ่มต้น เช่น attr.label_list(default = ["//a:b", "//a:c"])
doc ค่าเริ่มต้น = ''
คำอธิบายของแอตทริบิวต์ที่เครื่องมือสร้างเอกสารประกอบได้
allow_files bool; or sequence of strings; or None; ค่าเริ่มต้น = ไม่มี
ระบุว่าอนุญาตเป้าหมาย File หรือไม่ อาจเป็น True, False (ค่าเริ่มต้น) หรือรายการนามสกุลไฟล์ที่อนุญาต (เช่น [".cc", ".cpp"])
allow_rules sequence of strings; or None; default = ไม่มี
อนุญาตเป้าหมายกฎใด (ชื่อคลาส) เลิกใช้งานไปแล้ว (เก็บไว้เพื่อความเข้ากันได้เท่านั้น) โปรดใช้ผู้ให้บริการแทน
providers ค่าเริ่มต้น = []
ผู้ให้บริการที่ต้องมาจากทรัพยากร Dependency ที่ปรากฏในแอตทริบิวต์นี้

รูปแบบของอาร์กิวเมนต์นี้คือรายการรายชื่อผู้ให้บริการ - ออบเจ็กต์ *Info รายการที่แสดงผลโดย provider() (หรือชื่อสตริงในกรณีของผู้ให้บริการเดิม) ทรัพยากร Dependency ต้องแสดงผลผู้ให้บริการทั้งหมดที่กล่าวถึงในรายการภายในอย่างน้อย 1 รายการ เพื่อความสะดวก อาร์กิวเมนต์นี้อาจเป็นรายการผู้ให้บริการระดับเดียว ซึ่งในกรณีนี้จะรวมอยู่ในรายการด้านนอกที่มีองค์ประกอบเดียว

flags sequence of strings; ค่าเริ่มต้น = []
เลิกใช้งานแล้วและจะถูกนำออก
mandatory ค่าเริ่มต้น = เท็จ
หากเป็น "จริง" คุณต้องระบุค่าอย่างชัดเจน (แม้ว่าจะมี default ก็ตาม)
cfg ค่าเริ่มต้น = ไม่มี
การกำหนดค่าของแอตทริบิวต์ อาจเป็น "exec" ซึ่งบ่งชี้ว่าทรัพยากร Dependency สร้างขึ้นสำหรับ execution platform หรือ "target" ซึ่งระบุว่าทรัพยากร Dependency สร้างขึ้นสำหรับ target platform ตัวอย่างโดยทั่วไปของความแตกต่างคือเมื่อสร้างแอปบนอุปกรณ์เคลื่อนที่ โดยที่ target platform คือ Android หรือ iOS ขณะที่ execution platform คือ Linux, macOS หรือ Windows
aspects sequence of Aspects; ค่าเริ่มต้น = []
แง่มุมที่ควรใช้กับทรัพยากร Dependency หรือทรัพยากร Dependency ที่ระบุโดยแอตทริบิวต์นี้

เอาต์พุต

Attribute attr.output(doc='', mandatory=False)

สร้างสคีมาสำหรับแอตทริบิวต์เอาต์พุต (ป้ายกำกับ)

แอตทริบิวต์นี้มีค่า Label ที่ไม่ซ้ำกัน หากมีการระบุสตริงแทน Label ระบบจะแปลงสตริงโดยใช้ตัวสร้างป้ายกำกับ ส่วนที่เกี่ยวข้องของเส้นทางป้ายกำกับ รวมถึงที่เก็บ (อาจเปลี่ยนชื่อแล้ว) ได้รับการแก้ไขตามแพ็กเกจของเป้าหมายที่สร้างอินสแตนซ์แล้ว

ขณะวิเคราะห์ ระบบจะดึงข้อมูล File ที่เกี่ยวข้องโดยใช้ ctx.outputs

พารามิเตอร์

พารามิเตอร์ คำอธิบาย
doc ค่าเริ่มต้น = ''
คำอธิบายของแอตทริบิวต์ที่เครื่องมือสร้างเอกสารประกอบได้
mandatory ค่าเริ่มต้น = เท็จ
หากเป็น "จริง" คุณต้องระบุค่าอย่างชัดเจน (แม้ว่าจะมี default ก็ตาม)

output_list

Attribute attr.output_list(allow_empty=True, *, doc='', mandatory=False)

สร้างสคีมาสำหรับแอตทริบิวต์รายการเอาต์พุต

แอตทริบิวต์นี้มีค่า Label ที่ไม่ซ้ำกัน หากมีการระบุสตริงแทน Label ระบบจะแปลงสตริงโดยใช้ตัวสร้างป้ายกำกับ ส่วนที่เกี่ยวข้องของเส้นทางป้ายกำกับ รวมถึงที่เก็บ (อาจเปลี่ยนชื่อแล้ว) ได้รับการแก้ไขตามแพ็กเกจของเป้าหมายที่สร้างอินสแตนซ์แล้ว

ขณะวิเคราะห์ ระบบจะดึงข้อมูล File ที่เกี่ยวข้องโดยใช้ ctx.outputs

พารามิเตอร์

พารามิเตอร์ คำอธิบาย
allow_empty ค่าเริ่มต้น = จริง
จริง หากแอตทริบิวต์เว้นว่างไว้ได้
doc ค่าเริ่มต้น = ''
คำอธิบายของแอตทริบิวต์ที่เครื่องมือสร้างเอกสารประกอบได้
mandatory ค่าเริ่มต้น = เท็จ
หากเป็น "จริง" คุณต้องระบุค่าอย่างชัดเจน (แม้ว่าจะมี default ก็ตาม)

สตริง

Attribute attr.string(default='', doc='', mandatory=False, values=[])

สร้างสคีมาสำหรับแอตทริบิวต์สตริง

พารามิเตอร์

พารามิเตอร์ คำอธิบาย
default string; or NativeComputedDefault; ค่าเริ่มต้น = ''
ค่าเริ่มต้นที่จะใช้หากไม่มีการระบุค่าสำหรับแอตทริบิวต์นี้เมื่อเริ่มต้นกฎ
doc ค่าเริ่มต้น = ''
คำอธิบายของแอตทริบิวต์ที่เครื่องมือสร้างเอกสารประกอบได้
mandatory ค่าเริ่มต้น = เท็จ
หากเป็น "จริง" คุณต้องระบุค่าอย่างชัดเจน (แม้ว่าจะมี default ก็ตาม)
values sequence of strings; ค่าเริ่มต้น = []
รายการค่าที่อนุญาตสำหรับแอตทริบิวต์ ระบบจะแสดงข้อผิดพลาดหากมีการระบุค่าอื่น

string_dict

Attribute attr.string_dict(allow_empty=True, *, default={}, doc='', mandatory=False)

สร้างสคีมาสำหรับแอตทริบิวต์ที่มีพจนานุกรม โดยคีย์และค่าเป็นสตริง

พารามิเตอร์

พารามิเตอร์ คำอธิบาย
allow_empty ค่าเริ่มต้น = จริง
จริง หากแอตทริบิวต์เว้นว่างไว้ได้
default ค่าเริ่มต้น = {}
ค่าเริ่มต้นที่จะใช้หากไม่มีการระบุค่าสำหรับแอตทริบิวต์นี้เมื่อเริ่มต้นกฎ
doc ค่าเริ่มต้น = ''
คำอธิบายของแอตทริบิวต์ที่เครื่องมือสร้างเอกสารประกอบได้
mandatory ค่าเริ่มต้น = เท็จ
หากเป็น "จริง" คุณต้องระบุค่าอย่างชัดเจน (แม้ว่าจะมี default ก็ตาม)

string_list

Attribute attr.string_list(mandatory=False, allow_empty=True, *, default=[], doc='')

สร้างสคีมาสำหรับแอตทริบิวต์รายการสตริง

พารามิเตอร์

พารามิเตอร์ คำอธิบาย
mandatory ค่าเริ่มต้น = เท็จ
หากเป็น "จริง" คุณต้องระบุค่าอย่างชัดเจน (แม้ว่าจะมี default ก็ตาม)
allow_empty ค่าเริ่มต้น = จริง
จริง หากแอตทริบิวต์เว้นว่างไว้ได้
default sequence of strings; or NativeComputedDefault; ค่าเริ่มต้น = []
ค่าเริ่มต้นที่จะใช้หากไม่มีการระบุค่าสำหรับแอตทริบิวต์นี้เมื่อเริ่มต้นกฎ
doc ค่าเริ่มต้น = ''
คำอธิบายของแอตทริบิวต์ที่เครื่องมือสร้างเอกสารประกอบได้

string_list_dict

Attribute attr.string_list_dict(allow_empty=True, *, default={}, doc='', mandatory=False)

สร้างสคีมาสำหรับแอตทริบิวต์ที่มีพจนานุกรม โดยคีย์เป็นสตริงและค่าคือรายการสตริง

พารามิเตอร์

พารามิเตอร์ คำอธิบาย
allow_empty ค่าเริ่มต้น = จริง
จริง หากแอตทริบิวต์เว้นว่างไว้ได้
default ค่าเริ่มต้น = {}
ค่าเริ่มต้นที่จะใช้หากไม่มีการระบุค่าสำหรับแอตทริบิวต์นี้เมื่อเริ่มต้นกฎ
doc ค่าเริ่มต้น = ''
คำอธิบายของแอตทริบิวต์ที่เครื่องมือสร้างเอกสารประกอบได้
mandatory ค่าเริ่มต้น = เท็จ
หากเป็น "จริง" คุณต้องระบุค่าอย่างชัดเจน (แม้ว่าจะมี default ก็ตาม)