rules_एट्रिब्यूट

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

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

पैसे चुकाकर बने सदस्यों के लिए

एट्रिब्यूट

struct rule_attributes.attr

एट्रिब्यूट की वैल्यू को ऐक्सेस करने का निर्देश. ये वैल्यू, उपयोगकर्ता ने दी हैं. अगर ऐसा नहीं है, तो डिफ़ॉल्ट वैल्यू का इस्तेमाल किया जाता है. स्ट्रक्चर के एट्रिब्यूट और उनकी वैल्यू के टाइप, rule फ़ंक्शन को दिए गए attrs dict की कुंजियों और वैल्यू के मुताबिक होते हैं. इस्तेमाल का उदाहरण देखें.

एक्ज़ीक्यूटेबल

struct rule_attributes.executable

एक struct, जिसमें executable=True के तौर पर मार्क किए गए लेबल टाइप एट्रिब्यूट में ऐसी एक्ज़ीक्यूटेबल फ़ाइलें मौजूद हैं. स्ट्रक्चर फ़ील्ड, एट्रिब्यूट के नाम के मुताबिक होती हैं. निर्देश में मौजूद हर वैल्यू, File या None है. अगर इस नियम में कोई वैकल्पिक एट्रिब्यूट नहीं बताया गया है, तो स्ट्रक्चर की वैल्यू None होगी. अगर किसी लेबल टाइप को executable=True के तौर पर मार्क नहीं किया गया है, तो इससे जुड़ा कोई निर्देश फ़ील्ड जनरेट नहीं होता. इस्तेमाल का उदाहरण देखें.

फ़ाइल

struct rule_attributes.file

एक struct में ऐसी फ़ाइलें मौजूद हैं जिनके लेबल टाइप एट्रिब्यूट में, allow_single_file के तौर पर निशान लगाया गया है. स्ट्रक्चर फ़ील्ड, एट्रिब्यूट के नाम के मुताबिक होती हैं. स्ट्रक्ट के लिए वैल्यू हमेशा File या None होती है. अगर इस नियम में कोई वैकल्पिक एट्रिब्यूट नहीं बताया गया है, तो स्ट्रक्चर की वैल्यू None होगी. अगर किसी लेबल टाइप को allow_single_file के तौर पर मार्क नहीं किया गया है, तो इससे जुड़ा कोई निर्देश फ़ील्ड जनरेट नहीं होता. यह इसका शॉर्टकट है:
list(ctx.attr.<ATTR>.files)[0]
दूसरे शब्दों में, किसी डिपेंडेंसी के (एकवचन) डिफ़ॉल्ट आउटपुट को ऐक्सेस करने के लिए, file का इस्तेमाल करें. इस्तेमाल का उदाहरण देखें.

फ़ाइलें

struct rule_attributes.files

struct में ऐसी फ़ाइलें मौजूद हैं जिनके बारे में लेबल या लेबल सूची टाइप एट्रिब्यूट में बताया गया है. स्ट्रक्चर फ़ील्ड, एट्रिब्यूट के नाम के मुताबिक होती हैं. स्ट्रक्चर की वैल्यू, File में से list हैं. यह शॉर्टकट के लिए है:
[f for t in ctx.attr.<ATTR> for f in t.files]
दूसरे शब्दों में, किसी डिपेंडेंसी के डिफ़ॉल्ट आउटपुट को ऐक्सेस करने के लिए files का इस्तेमाल करें. इस्तेमाल का उदाहरण देखें.

प्रकार

string rule_attributes.kind

नियम किस तरह का है, जैसे कि 'cc_library'