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