attr

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

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

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

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

bool

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

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

पैरामीटर

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

int

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

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

पैरामीटर

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

int_list

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

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

पैरामीटर

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

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

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

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

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

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

label_list

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 अगर एट्रिब्यूट की वैल्यू को खाली छोड़ा जा सकता है, तो डिफ़ॉल्ट रूप से यह True
'सही' पर सेट होता है.
default लेबल का क्रम; या फ़ंक्शन; डिफ़ॉल्ट है []
अगर नियम को इंस्टैंशिएट करते समय, इस एट्रिब्यूट के लिए कोई वैल्यू नहीं दी जाती है, तो इस्तेमाल करने के लिए एक डिफ़ॉल्ट वैल्यू. डिफ़ॉल्ट वैल्यू तय करने के लिए, स्ट्रिंग या Label फ़ंक्शन का इस्तेमाल करें. उदाहरण के लिए, attr.label_list(default = ["//a:b", "//a:c"]).
doc string; या None; डिफ़ॉल्ट रूप से None है
एट्रिब्यूट का ब्यौरा, जिसे दस्तावेज़ जनरेट करने वाले टूल की मदद से हासिल किया जा सकता है.
allow_files bool; या स्ट्रिंग का क्रम; या None; डिफ़ॉल्ट रूप से None
सेट होता है कि File टारगेट की अनुमति है या नहीं. यह True, False (डिफ़ॉल्ट) या ऐसे फ़ाइल एक्सटेंशन की सूची हो सकता है जिन्हें अनुमति दी गई है (उदाहरण के लिए, [".cc", ".cpp"]).
allow_rules स्ट्रिंग का क्रम; या None; डिफ़ॉल्ट रूप से यह None
टारगेट (क्लास के नाम) को टारगेट करने वाला नियम है. अब इसे बंद कर दिया गया है (इसे सिर्फ़ साथ काम करने के लिए रखा गया है). इसके बजाय, सेवा देने वाली कंपनियों का इस्तेमाल करें.
providers [] डिफ़ॉल्ट तौर पर सेट है
सेवा देने वाली वे कंपनियां जिन्हें इस एट्रिब्यूट में दिखने वाली किसी भी डिपेंडेंसी के हिसाब से तय किया जाना चाहिए.

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

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

आउटपुट

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

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

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

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

पैरामीटर

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

output_list

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

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

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

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

पैरामीटर

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

स्ट्रिंग

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

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

पैरामीटर

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

string_dict

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

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

पैरामीटर

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

string_list

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

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

पैरामीटर

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

string_list_dict

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

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

पैरामीटर

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