attr

यह किसी नियम या पहलू के एट्रिब्यूट स्कीमा को तय करने के लिए, टॉप-लेवल मॉड्यूल है. हर फ़ंक्शन, किसी एक एट्रिब्यूट के स्कीमा को दिखाने वाला ऑब्जेक्ट दिखाता है. इन ऑब्जेक्ट का इस्तेमाल, rule() और aspect() के attrs डिक्शनरी आर्ग्युमेंट की वैल्यू के तौर पर किया जाता है.

एट्रिब्यूट को तय करने और इस्तेमाल करने के बारे में ज़्यादा जानने के लिए, नियम वाला पेज देखें.

सदस्य

बूल

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

बूलियन एट्रिब्यूट के लिए स्कीमा बनाता है.

पैरामीटर

पैरामीटर ब्यौरा
default default = False
नियम को इंस्टैंशिएट करते समय, अगर इस एट्रिब्यूट के लिए कोई वैल्यू नहीं दी जाती है, तो इस्तेमाल करने के लिए डिफ़ॉल्ट वैल्यू.
doc default = ''
दस्तावेज़ जनरेट करने वाले टूल से निकाले जा सकने वाले एट्रिब्यूट की जानकारी.
mandatory default = False
अगर यह 'सही' है, तो वैल्यू साफ़ तौर पर बताई जानी चाहिए. भले ही, उसमें default हो.

int

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

इंटीजर एट्रिब्यूट के लिए स्कीमा बनाता है. वैल्यू, साइन वाली 32-बिट रेंज में होनी चाहिए.

पैरामीटर

पैरामीटर ब्यौरा
default डिफ़ॉल्ट = 0
नियम को लागू करते समय, अगर इस एट्रिब्यूट के लिए कोई वैल्यू नहीं दी जाती है, तो इस्तेमाल करने के लिए डिफ़ॉल्ट वैल्यू.
doc default = ''
दस्तावेज़ जनरेट करने वाले टूल से निकाले जा सकने वाले एट्रिब्यूट की जानकारी.
mandatory default = False
अगर यह 'सही' है, तो वैल्यू साफ़ तौर पर बताई जानी चाहिए. भले ही, उसमें default हो.
values sequence of ints; default = []
एट्रिब्यूट के लिए इस्तेमाल की जा सकने वाली वैल्यू की सूची. अगर कोई दूसरी वैल्यू दी जाती है, तो गड़बड़ी का मैसेज दिखता है.

int_list

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

पूर्णांकों की सूची वाले एट्रिब्यूट के लिए स्कीमा बनाता है. हर एलिमेंट, साइन किए गए 32-बिट रेंज में होना चाहिए.

पैरामीटर

पैरामीटर ब्यौरा
mandatory default = False
अगर यह 'सही' है, तो वैल्यू साफ़ तौर पर बताई जानी चाहिए. भले ही, उसमें default हो.
allow_empty default = True
अगर एट्रिब्यूट की वैल्यू खाली हो सकती है, तो यह 'सही' पर सेट होता है.
default sequence of ints; default = []
नियम को लागू करते समय, अगर इस एट्रिब्यूट के लिए कोई वैल्यू नहीं दी जाती है, तो इस्तेमाल करने के लिए डिफ़ॉल्ट वैल्यू.
doc default = ''
दस्तावेज़ जनरेट करने वाले टूल से निकाले जा सकने वाले एट्रिब्यूट की जानकारी.

लेबल

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 से बदल दिया जाता है. इसकी मदद से, मौजूदा टारगेट की डिपेंडेंसी के लिए, सेवा देने वाली कंपनियों को ऐक्सेस किया जा सकता है.

सामान्य सोर्स फ़ाइलों के अलावा, इस तरह के एट्रिब्यूट का इस्तेमाल अक्सर किसी टूल के बारे में बताने के लिए किया जाता है. उदाहरण के लिए, कंपाइलर. ऐसे टूल को सोर्स फ़ाइलों की तरह ही डिपेंडेंसी माना जाता है. उपयोगकर्ताओं को हर बार अपनी BUILD फ़ाइलों में नियम का इस्तेमाल करते समय, टूल का लेबल बताने की ज़रूरत न पड़े, इसके लिए इस एट्रिब्यूट की default वैल्यू के तौर पर, किसी कैननिकल टूल के लेबल को हार्ड-कोड किया जा सकता है. अगर आपको उपयोगकर्ताओं को इस डिफ़ॉल्ट वैल्यू को बदलने से भी रोकना है, तो एट्रिब्यूट को निजी बनाया जा सकता है. इसके लिए, एट्रिब्यूट को अंडरस्कोर से शुरू होने वाला नाम दें. ज़्यादा जानकारी के लिए, नियम पेज देखें.

पैरामीटर

पैरामीटर ब्यौरा
default Label; or string; or LateBoundDefault; or NativeComputedDefault; or function; or None; default = None
नियम को इंस्टैंशिएट करते समय, अगर इस एट्रिब्यूट के लिए कोई वैल्यू नहीं दी जाती है, तो इस्तेमाल करने के लिए डिफ़ॉल्ट वैल्यू. डिफ़ॉल्ट वैल्यू तय करने के लिए, स्ट्रिंग या Label फ़ंक्शन का इस्तेमाल करें. उदाहरण के लिए, attr.label(default = "//a:b").
doc default = ''
दस्तावेज़ जनरेट करने वाले टूल से निकाले जा सकने वाले एट्रिब्यूट की जानकारी.
executable डिफ़ॉल्ट = False
अगर डिपेंडेंसी को चलाया जा सकता है, तो True. इसका मतलब है कि लेबल में किसी एक्ज़ीक्यूटेबल फ़ाइल या ऐसे नियम का रेफ़रंस होना चाहिए जो एक्ज़ीक्यूटेबल फ़ाइल को आउटपुट करता हो. ctx.executable.<attribute_name> का इस्तेमाल करके लेबल को ऐक्सेस करें.
allow_files bool; or sequence of strings; or None; default = None
क्या File टारगेट की अनुमति है. यह True, False (डिफ़ॉल्ट) या अनुमति वाले फ़ाइल एक्सटेंशन की सूची हो सकती है. उदाहरण के लिए, [".cc", ".cpp"].
allow_single_file डिफ़ॉल्ट = None
यह allow_files जैसा ही है. हालांकि, इसकी यह शर्त है कि लेबल किसी एक फ़ाइल से जुड़ा होना चाहिए. इसे ctx.file.<attribute_name> से ऐक्सेस करें.
mandatory default = False
अगर यह 'सही' है, तो वैल्यू साफ़ तौर पर बताई जानी चाहिए. भले ही, उसमें default हो.
providers डिफ़ॉल्ट = []
इस एट्रिब्यूट में दिखने वाली किसी भी डिपेंडेंसी से, सेवा देने वाली कंपनियों की जानकारी देना ज़रूरी है.

इस आर्ग्युमेंट का फ़ॉर्मैट, सेवा देने वाली कंपनियों की सूचियों की सूची है -- provider() से मिले *Info ऑब्जेक्ट (या लेगसी सेवा देने वाली कंपनी के मामले में, उसका स्ट्रिंग नाम). डिपेंडेंसी, कम से कम एक इनर सूची में बताए गए सभी प्रोवाइडर दिखानी चाहिए. सुविधा के लिए, यह आर्ग्युमेंट सेवा देने वाली कंपनियों की एक-लेवल की सूची भी हो सकती है. ऐसे में, इसे एक एलिमेंट वाली बाहरी सूची में लपेटा जाता है.

allow_rules sequence of strings; or None; default = None
किन नियम टारगेट (क्लास के नाम) को अनुमति दी जाती है. इसे बंद कर दिया गया है (सिर्फ़ काम करने के लिए रखा गया है). इसके बजाय, प्रोवाइडर का इस्तेमाल करें.
cfg default = None
एट्रिब्यूट का कॉन्फ़िगरेशन. यह "exec" या "target" हो सकता है. "exec" से पता चलता है कि डिपेंडेंसी, execution platform के लिए बनाई गई है. वहीं, "target" से पता चलता है कि डिपेंडेंसी, target platform के लिए बनाई गई है. मोबाइल ऐप्लिकेशन बनाते समय, इस अंतर का एक अच्छा उदाहरण है. यहां target platform, Android या iOS होता है, जबकि execution platform, Linux, macOS या Windows होता है. अगर executable की वैल्यू 'सही' है, तो यह पैरामीटर ज़रूरी है. इससे, टारगेट कॉन्फ़िगरेशन में गलती से होस्ट टूल बनाने से बचा जा सकता है. "target" का कोई सेमेटिक असर नहीं होता. इसलिए, जब executable 'गलत है' पर सेट हो, तब इसे तब तक सेट न करें, जब तक कि यह आपके इरादों को साफ़ तौर पर बताने में मदद न करे.
aspects sequence of Aspects; default = []
इस एट्रिब्यूट की मदद से बताई गई डिपेंडेंसी या डिपेंडेंसी पर लागू होने वाले पहलू.

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 से बदल दिया जाता है. इसकी मदद से, मौजूदा टारगेट की डिपेंडेंसी के लिए, सेवा देने वाली कंपनियों को ऐक्सेस किया जा सकता है.

पैरामीटर

पैरामीटर ब्यौरा
allow_empty default = True
अगर एट्रिब्यूट की वैल्यू खाली हो सकती है, तो यह 'सही' पर सेट होता है.
default dict; or function; default = {}
नियम को लागू करते समय, अगर इस एट्रिब्यूट के लिए कोई वैल्यू नहीं दी जाती है, तो इस्तेमाल करने के लिए डिफ़ॉल्ट वैल्यू. डिफ़ॉल्ट वैल्यू तय करने के लिए, स्ट्रिंग या Label फ़ंक्शन का इस्तेमाल करें. उदाहरण के लिए, attr.label_keyed_string_dict(default = {"//a:b": "value", "//a:c": "string"}).
doc default = ''
दस्तावेज़ जनरेट करने वाले टूल से निकाले जा सकने वाले एट्रिब्यूट की जानकारी.
allow_files bool; or sequence of strings; or None; default = None
क्या File टारगेट की अनुमति है. यह True, False (डिफ़ॉल्ट) या अनुमति वाले फ़ाइल एक्सटेंशन की सूची हो सकती है. उदाहरण के लिए, [".cc", ".cpp"].
allow_rules sequence of strings; or None; default = None
किन नियम टारगेट (क्लास के नाम) को अनुमति दी जाती है. इसे बंद कर दिया गया है (सिर्फ़ काम करने के लिए रखा गया है). इसके बजाय, प्रोवाइडर का इस्तेमाल करें.
providers डिफ़ॉल्ट = []
इस एट्रिब्यूट में दिखने वाली किसी भी डिपेंडेंसी से, सेवा देने वाली कंपनियों की जानकारी देना ज़रूरी है.

इस आर्ग्युमेंट का फ़ॉर्मैट, सेवा देने वाली कंपनियों की सूचियों की सूची है -- provider() से मिले *Info ऑब्जेक्ट (या लेगसी सेवा देने वाली कंपनी के मामले में, उसका स्ट्रिंग नाम). डिपेंडेंसी, कम से कम एक इनर सूची में बताए गए सभी प्रोवाइडर दिखानी चाहिए. सुविधा के लिए, यह आर्ग्युमेंट सेवा देने वाली कंपनियों की एक-लेवल की सूची भी हो सकती है. ऐसे में, इसे एक एलिमेंट वाली बाहरी सूची में लपेटा जाता है.

flags sequence of strings; default = []
'अब काम नहीं करता' के तौर पर मार्क किया गया है. इसे हटा दिया जाएगा.
mandatory default = False
अगर यह 'सही' है, तो वैल्यू साफ़ तौर पर बताई जानी चाहिए. भले ही, उसमें default हो.
cfg default = None
एट्रिब्यूट का कॉन्फ़िगरेशन. यह "exec" या "target" हो सकता है. "exec" से पता चलता है कि डिपेंडेंसी, execution platform के लिए बनाई गई है. वहीं, "target" से पता चलता है कि डिपेंडेंसी, target platform के लिए बनाई गई है. मोबाइल ऐप्लिकेशन बनाते समय, इस अंतर का एक अच्छा उदाहरण है. यहां target platform, Android या iOS होता है, जबकि execution platform, Linux, macOS या Windows होता है.
aspects sequence of Aspects; default = []
इस एट्रिब्यूट की मदद से बताई गई डिपेंडेंसी या डिपेंडेंसी पर लागू होने वाले पहलू.

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 से बदल दिया जाता है. इसकी मदद से, मौजूदा टारगेट की डिपेंडेंसी के लिए, सेवा देने वाली कंपनियों को ऐक्सेस किया जा सकता है.

पैरामीटर

पैरामीटर ब्यौरा
allow_empty default = True
अगर एट्रिब्यूट की वैल्यू खाली हो सकती है, तो यह 'सही' पर सेट होता है.
default sequence of Labels; or function; default = []
नियम को लागू करते समय, अगर इस एट्रिब्यूट के लिए कोई वैल्यू नहीं दी जाती है, तो इस्तेमाल करने के लिए डिफ़ॉल्ट वैल्यू. डिफ़ॉल्ट वैल्यू तय करने के लिए, स्ट्रिंग या Label फ़ंक्शन का इस्तेमाल करें. उदाहरण के लिए, attr.label_list(default = ["//a:b", "//a:c"]).
doc default = ''
दस्तावेज़ जनरेट करने वाले टूल से निकाले जा सकने वाले एट्रिब्यूट की जानकारी.
allow_files bool; or sequence of strings; or None; default = None
क्या File टारगेट की अनुमति है. यह True, False (डिफ़ॉल्ट) या अनुमति वाले फ़ाइल एक्सटेंशन की सूची हो सकती है. उदाहरण के लिए, [".cc", ".cpp"].
allow_rules sequence of strings; or None; default = None
किन नियम टारगेट (क्लास के नाम) को अनुमति दी जाती है. इसे बंद कर दिया गया है (सिर्फ़ काम करने के लिए रखा गया है). इसके बजाय, प्रोवाइडर का इस्तेमाल करें.
providers डिफ़ॉल्ट = []
इस एट्रिब्यूट में दिखने वाली किसी भी डिपेंडेंसी से, सेवा देने वाली कंपनियों की जानकारी देना ज़रूरी है.

इस आर्ग्युमेंट का फ़ॉर्मैट, सेवा देने वाली कंपनियों की सूचियों की सूची है -- provider() से मिले *Info ऑब्जेक्ट (या लेगसी सेवा देने वाली कंपनी के मामले में, उसका स्ट्रिंग नाम). डिपेंडेंसी, कम से कम एक इनर सूची में बताए गए सभी प्रोवाइडर दिखानी चाहिए. सुविधा के लिए, यह आर्ग्युमेंट सेवा देने वाली कंपनियों की एक-लेवल की सूची भी हो सकती है. ऐसे में, इसे एक एलिमेंट वाली बाहरी सूची में लपेटा जाता है.

flags sequence of strings; default = []
'अब काम नहीं करता' के तौर पर मार्क किया गया है. इसे हटा दिया जाएगा.
mandatory default = False
अगर यह 'सही' है, तो वैल्यू साफ़ तौर पर बताई जानी चाहिए. भले ही, उसमें default हो.
cfg default = None
एट्रिब्यूट का कॉन्फ़िगरेशन. यह "exec" या "target" हो सकता है. "exec" से पता चलता है कि डिपेंडेंसी, execution platform के लिए बनाई गई है. वहीं, "target" से पता चलता है कि डिपेंडेंसी, target platform के लिए बनाई गई है. मोबाइल ऐप्लिकेशन बनाते समय, इस अंतर का एक अच्छा उदाहरण है. यहां target platform, Android या iOS होता है, जबकि execution platform, Linux, macOS या Windows होता है.
aspects sequence of Aspects; default = []
इस एट्रिब्यूट की मदद से बताई गई डिपेंडेंसी या डिपेंडेंसी पर लागू होने वाले पहलू.

आउटपुट

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

आउटपुट (लेबल) एट्रिब्यूट के लिए स्कीमा बनाता है.

इस एट्रिब्यूट में यूनीक Label वैल्यू होती हैं. अगर Label के बजाय कोई स्ट्रिंग दी जाती है, तो उसे लेबल कंस्ट्रक्टर का इस्तेमाल करके बदल दिया जाएगा. लेबल पाथ के रिलेटिव हिस्सों को, इंस्टैंशिएट किए गए टारगेट के पैकेज के हिसाब से हल किया जाता है. इन हिस्सों में, संभवतः नाम बदला गया रिपॉज़िटरी भी शामिल है.

विश्लेषण के समय, ctx.outputs का इस्तेमाल करके उससे जुड़ा File वापस पाया जा सकता है.

पैरामीटर

पैरामीटर ब्यौरा
doc default = ''
दस्तावेज़ जनरेट करने वाले टूल से निकाले जा सकने वाले एट्रिब्यूट की जानकारी.
mandatory default = False
अगर यह 'सही' है, तो वैल्यू साफ़ तौर पर बताई जानी चाहिए. भले ही, उसमें default हो.

output_list

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

आउटपुट की सूची वाले एट्रिब्यूट के लिए स्कीमा बनाता है.

इस एट्रिब्यूट में यूनीक Label वैल्यू होती हैं. अगर Label के बजाय कोई स्ट्रिंग दी जाती है, तो उसे लेबल कंस्ट्रक्टर का इस्तेमाल करके बदल दिया जाएगा. लेबल पाथ के रिलेटिव हिस्सों को, इंस्टैंशिएट किए गए टारगेट के पैकेज के हिसाब से हल किया जाता है. इन हिस्सों में, संभवतः नाम बदला गया रिपॉज़िटरी भी शामिल है.

विश्लेषण के समय, ctx.outputs का इस्तेमाल करके उससे जुड़ा File वापस पाया जा सकता है.

पैरामीटर

पैरामीटर ब्यौरा
allow_empty default = True
अगर एट्रिब्यूट की वैल्यू खाली हो सकती है, तो यह 'सही' पर सेट होता है.
doc default = ''
दस्तावेज़ जनरेट करने वाले टूल से निकाले जा सकने वाले एट्रिब्यूट की जानकारी.
mandatory default = False
अगर यह 'सही' है, तो वैल्यू साफ़ तौर पर बताई जानी चाहिए. भले ही, उसमें default हो.

स्ट्रिंग

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

स्ट्रिंग एट्रिब्यूट के लिए स्कीमा बनाता है.

पैरामीटर

पैरामीटर ब्यौरा
default string; or NativeComputedDefault; default = ''
नियम को लागू करते समय, अगर इस एट्रिब्यूट के लिए कोई वैल्यू नहीं दी जाती है, तो इस्तेमाल करने के लिए डिफ़ॉल्ट वैल्यू.
doc default = ''
दस्तावेज़ जनरेट करने वाले टूल से निकाले जा सकने वाले एट्रिब्यूट की जानकारी.
mandatory default = False
अगर यह 'सही' है, तो वैल्यू साफ़ तौर पर बताई जानी चाहिए. भले ही, उसमें default हो.
values sequence of strings; default = []
एट्रिब्यूट के लिए इस्तेमाल की जा सकने वाली वैल्यू की सूची. अगर कोई दूसरी वैल्यू दी जाती है, तो गड़बड़ी का मैसेज दिखता है.

string_dict

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

किसी डिक्शनरी वाले एट्रिब्यूट के लिए स्कीमा बनाता है, जहां कुंजियां और वैल्यू स्ट्रिंग होती हैं.

पैरामीटर

पैरामीटर ब्यौरा
allow_empty default = True
अगर एट्रिब्यूट की वैल्यू खाली हो सकती है, तो यह 'सही' पर सेट होता है.
default default = {}
नियम को लागू करते समय, अगर इस एट्रिब्यूट के लिए कोई वैल्यू नहीं दी जाती है, तो इस्तेमाल करने के लिए डिफ़ॉल्ट वैल्यू.
doc default = ''
दस्तावेज़ जनरेट करने वाले टूल से निकाले जा सकने वाले एट्रिब्यूट की जानकारी.
mandatory default = False
अगर यह 'सही' है, तो वैल्यू साफ़ तौर पर बताई जानी चाहिए. भले ही, उसमें default हो.

string_list

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

स्ट्रिंग की सूची वाले एट्रिब्यूट के लिए स्कीमा बनाता है.

पैरामीटर

पैरामीटर ब्यौरा
mandatory default = False
अगर यह 'सही' है, तो वैल्यू साफ़ तौर पर बताई जानी चाहिए. भले ही, उसमें default हो.
allow_empty default = True
अगर एट्रिब्यूट की वैल्यू खाली हो सकती है, तो यह 'सही' पर सेट होता है.
default sequence of strings; or NativeComputedDefault; default = []
नियम को लागू करते समय, अगर इस एट्रिब्यूट के लिए कोई वैल्यू नहीं दी जाती है, तो इस्तेमाल करने के लिए डिफ़ॉल्ट वैल्यू.
doc default = ''
दस्तावेज़ जनरेट करने वाले टूल से निकाले जा सकने वाले एट्रिब्यूट की जानकारी.

string_list_dict

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

किसी ऐसे एट्रिब्यूट के लिए स्कीमा बनाता है जिसमें डिक्शनरी होती है. इसमें कुंजियां स्ट्रिंग होती हैं और वैल्यू, स्ट्रिंग की सूचियां होती हैं.

पैरामीटर

पैरामीटर ब्यौरा
allow_empty default = True
अगर एट्रिब्यूट की वैल्यू खाली हो सकती है, तो यह 'सही' पर सेट होता है.
default default = {}
नियम को लागू करते समय, अगर इस एट्रिब्यूट के लिए कोई वैल्यू नहीं दी जाती है, तो इस्तेमाल करने के लिए डिफ़ॉल्ट वैल्यू.
doc default = ''
दस्तावेज़ जनरेट करने वाले टूल से निकाले जा सकने वाले एट्रिब्यूट की जानकारी.
mandatory default = False
अगर यह 'सही' है, तो वैल्यू साफ़ तौर पर बताई जानी चाहिए. भले ही, उसमें default हो.