तारीख सेव करें: BazelCon 2023, 24 से 25 अक्टूबर तक Google म्यूनिख में होगा! रजिस्ट्रेशन अब शुरू हो गया है! ज़्यादा जानें

attr

समस्या की शिकायत करें सोर्स देखें

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

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

पैसे चुकाकर बने सदस्य

बूल

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

बूलियन एट्रिब्यूट के लिए एक स्कीमा बनाता है. इससे जुड़ा ctx.attr एट्रिब्यूट, bool टाइप का होगा.

पैरामीटर

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

int

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

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

पैरामीटर

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

int_list

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

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

पैरामीटर

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

लेबल

Attribute attr.label(default=None, doc=None, 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: डिफ़ॉल्ट = कोई नहीं
अगर नियम लागू करते समय इस एट्रिब्यूट के लिए कोई वैल्यू नहीं दी जाती है, तो इस्तेमाल करने के लिए डिफ़ॉल्ट वैल्यू.डिफ़ॉल्ट वैल्यू तय करने के लिए, स्ट्रिंग या Label फ़ंक्शन का इस्तेमाल करें, जैसे कि attr.label(default = "//a:b").
doc string; or None: डिफ़ॉल्ट = कोई नहीं
एट्रिब्यूट का ब्यौरा, जिसे दस्तावेज़ जनरेट करने वाले टूल से निकाला जा सकता है.
executable डिफ़ॉल्ट = False
सही, अगर डिपेंडेंसी एक्ज़ीक्यूटेबल होनी चाहिए. इसका मतलब है कि लेबल को एक्ज़ीक्यूटेबल फ़ाइल या किसी एक्ज़ीक्यूटेबल फ़ाइल को आउटपुट करने वाले नियम का रेफ़रंस देना चाहिए. 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 डिफ़ॉल्ट = [
] सेवा देने वाली ऐसी कंपनियां जिन्हें इस एट्रिब्यूट में दिखने वाली डिपेंडेंसी के ज़रिए दिया जाना चाहिए.

इस आर्ग्युमेंट का फ़ॉर्मैट कंपनियों की सूचियों की सूची है -- provider() के ज़रिए दिए गए *Info ऑब्जेक्ट (लेगसी प्रोवाइडर के स्ट्रिंग नाम के मामले में). डिपेंडेंसी से, उन सभी कंपनियों की जानकारी मिलनी चाहिए जिनके बारे में अंदरूनी सूचियों में कम से कम एक शर्त है. सुविधा के तौर पर, यह आर्ग्युमेंट सेवा देने वाली कंपनियों की एक लेवल की सूची भी हो सकती है. इस स्थिति में, इसे एक एलिमेंट के साथ बाहरी सूची में रैप किया जाता है. इसकी ज़रूरत नहीं है कि डिपेंडेंसी का नियम, अपने प्रोवाइडर की provides parameter, however, it is considered best practice. के लिए विज्ञापन देता है

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

लेबल_keyed_string_dict

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

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

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

विश्लेषण के समय (नियम लागू करने के फ़ंक्शन के अंदर), ctx.attr से एट्रिब्यूट की वैल्यू हासिल करते समय लेबल, संबंधित Target से बदल दिए जाते हैं. इससे, मौजूदा टारगेट डिपेंडेंसी से जुड़ी सेवा देने वाली कंपनियों को ऐक्सेस किया जा सकता है.

पैरामीटर

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

इस आर्ग्युमेंट का फ़ॉर्मैट कंपनियों की सूचियों की सूची है -- provider() के ज़रिए दिए गए *Info ऑब्जेक्ट (लेगसी प्रोवाइडर के स्ट्रिंग नाम के मामले में). डिपेंडेंसी से, उन सभी कंपनियों की जानकारी मिलनी चाहिए जिनके बारे में अंदरूनी सूचियों में कम से कम एक शर्त है. सुविधा के तौर पर, यह आर्ग्युमेंट सेवा देने वाली कंपनियों की एक लेवल की सूची भी हो सकती है. इस स्थिति में, इसे एक एलिमेंट के साथ बाहरी सूची में रैप किया जाता है. इसकी ज़रूरत नहीं है कि डिपेंडेंसी का नियम, अपने प्रोवाइडर की provides parameter, however, it is considered best practice. के लिए विज्ञापन देता है

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

लेबल_सूची

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

'लेबल की सूची' एट्रिब्यूट के लिए एक स्कीमा बनाता है. यह एक डिपेंडेंसी एट्रिब्यूट है. इससे जुड़ी ctx.attr एट्रिब्यूट, Target की सूची टाइप की होगी.

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

विश्लेषण के समय (नियम लागू करने के फ़ंक्शन के अंदर), ctx.attr से एट्रिब्यूट की वैल्यू हासिल करते समय लेबल, संबंधित Target से बदल दिए जाते हैं. इससे, मौजूदा टारगेट डिपेंडेंसी से जुड़ी सेवा देने वाली कंपनियों को ऐक्सेस किया जा सकता है.

पैरामीटर

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

इस आर्ग्युमेंट का फ़ॉर्मैट कंपनियों की सूचियों की सूची है -- provider() के ज़रिए दिए गए *Info ऑब्जेक्ट (लेगसी प्रोवाइडर के स्ट्रिंग नाम के मामले में). डिपेंडेंसी से, उन सभी कंपनियों की जानकारी मिलनी चाहिए जिनके बारे में अंदरूनी सूचियों में कम से कम एक शर्त है. सुविधा के तौर पर, यह आर्ग्युमेंट सेवा देने वाली कंपनियों की एक लेवल की सूची भी हो सकती है. इस स्थिति में, इसे एक एलिमेंट के साथ बाहरी सूची में रैप किया जाता है. इसकी ज़रूरत नहीं है कि डिपेंडेंसी का नियम, अपने प्रोवाइडर की provides parameter, however, it is considered best practice. के लिए विज्ञापन देता है

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

आउटपुट

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

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

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

विश्लेषण के समय, ctx.outputs का इस्तेमाल करके, संबंधित File को वापस लाया जा सकता है.

पैरामीटर

पैरामीटर जानकारी
doc string; or None: डिफ़ॉल्ट = कोई नहीं
एट्रिब्यूट का ब्यौरा, जिसे दस्तावेज़ जनरेट करने वाले टूल से निकाला जा सकता है.
mandatory डिफ़ॉल्ट = गलत
अगर सही है, तो वैल्यू साफ़ तौर पर बताई जानी चाहिए (भले ही, उसमें default हो).

आउटपुट_सूची

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

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

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

विश्लेषण के समय, ctx.outputs का इस्तेमाल करके, संबंधित File को वापस लाया जा सकता है.

पैरामीटर

पैरामीटर जानकारी
allow_empty डिफ़ॉल्ट = सही
अगर एट्रिब्यूट खाली हो, तो सही.
doc string; or None: डिफ़ॉल्ट = कोई नहीं
एट्रिब्यूट का ब्यौरा, जिसे दस्तावेज़ जनरेट करने वाले टूल से निकाला जा सकता है.
mandatory डिफ़ॉल्ट = गलत
अगर सही है, तो वैल्यू साफ़ तौर पर बताई जानी चाहिए (भले ही, उसमें default हो).

स्ट्रिंग

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

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

पैरामीटर

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

स्ट्रिंग_डिक्शन

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

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

पैरामीटर

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

स्ट्रिंग_लिस्ट

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

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

पैरामीटर

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

string_list_dict

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

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

पैरामीटर

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