किसी नियम के एट्रिब्यूट के बारे में जानकारी, जिस पर कोई आसपेक्ट लागू किया गया है.
सदस्य
एट्रिब्यूट
struct rule_attributes.attr
एट्रिब्यूट की वैल्यू ऐक्सेस करने के लिए, एक स्ट्रक्चर्ड डेटा. वैल्यू, उपयोगकर्ता उपलब्ध कराता है. अगर ऐसा नहीं होता है, तो डिफ़ॉल्ट वैल्यू का इस्तेमाल किया जाता है. स्ट्रक्चर्ड डेटा के एट्रिब्यूट और उनकी वैल्यू के टाइप,
attrs डिक्शनरी की कुंजियों और वैल्यू से मेल खाते हैं जो
rule फ़ंक्शन को दी गई हैं.
इस्तेमाल का उदाहरण देखें.
exec_groups
ExecGroupCollection rule_attributes.exec_groups
उन एक्ज़ीक्यूशन ग्रुप का कलेक्शन जो उस नियम के लिए उपलब्ध हैं जिस पर आसपेक्ट लागू किया गया है. इन्हें इनके नामों के हिसाब से इंडेक्स किया जाता है.
एक्ज़ीक्यूटेबल
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
A
struct जिसमें
लेबल या
लेबल सूची टाइप एट्रिब्यूट में तय की गई फ़ाइलें होती हैं. स्ट्रक्चर्ड डेटा के फ़ील्ड, एट्रिब्यूट के नामों से मेल खाते हैं. स्ट्रक्चर्ड डेटा की वैल्यू,
list की
File होती हैं. यह इनके लिए शॉर्टकट है:
[f for t in ctx.attr.<ATTR> for f in t.files]
दूसरे शब्दों में, किसी डिपेंडेंसी के
डिफ़ॉल्ट आउटपुट को ऐक्सेस करने के लिए,
files का इस्तेमाल करें.
इस्तेमाल का उदाहरण देखें.
टाइप
string rule_attributes.kind
किसी नियम का टाइप, जैसे कि 'cc_library'
ToolchainContext rule_attributes.toolchains
उस नियम के डिफ़ॉल्ट एक्ज़ेक ग्रुप के लिए टूलचेन जिस पर आसपेक्ट लागू किया गया है.
वेरिएबल
dict rule_attributes.var
कॉन्फ़िगरेशन वैरिएबल की डिक्शनरी (स्ट्रिंग से स्ट्रिंग).