लेबल

BUILD टारगेट आइडेंटिफ़ायर.

सदस्य

लेबल

Label Label(label_string)

BUILD टारगेट का रेफ़रंस देने वाला लेबल बनाता है. इस फ़ंक्शन का इस्तेमाल तब करें, जब आपको किसी नियम के लेबल एट्रिब्यूट के लिए डिफ़ॉल्ट वैल्यू देनी हो या मैक्रो के किसी एब्सोल्यूट लेबल के ज़रिए किसी टारगेट का रेफ़रंस देना हो. आर्ग्युमेंट में किसी एब्सोलूट लेबल का रेफ़रंस होना चाहिए. लेबल के 'रिपो' हिस्से (या उसकी अनुपस्थिति) का मतलब, उस रिपो के संदर्भ में निकाला जाता है जहां यह Label() कॉल दिखता है. उदाहरण:
Label("//tools:default")

पैरामीटर

पैरामीटर ब्यौरा
label_string ज़रूरी है
लेबल स्ट्रिंग.

नाम

string Label.name

पैकेज में इस लेबल का नाम. उदाहरण के लिए:
Label("//pkg/foo:abc").name == "abc"

पैकेज

string Label.package

इस लेबल का पैकेज हिस्सा. उदाहरण के लिए:
Label("//pkg/foo:abc").package == "pkg/foo"

संबंधित

Label Label.relative(relName)

यह किसी ऐसे लेबल को रिज़ॉल्व करता है जो एब्सोलूट (// से शुरू होता है) या मौजूदा पैकेज से रिलेटिव होता है. अगर यह लेबल किसी रिमोट रिपॉज़िटरी में है, तो उस रिपॉज़िटरी के हिसाब से आर्ग्युमेंट का हल निकाला जाएगा. अगर आर्ग्युमेंट में कोई रिपॉज़िटरी का नाम है, तो मौजूदा लेबल को अनदेखा कर दिया जाता है और आर्ग्युमेंट को वैसा ही दिखाया जाता है जैसा वह है. हालांकि, अगर रिपॉज़िटरी का नाम मौजूदा रिपॉज़िटरी मैपिंग में है, तो उसे फिर से लिखा जाता है. रिज़र्व किए गए लेबल भी बिना किसी बदलाव के दिखाए जाएंगे.
उदाहरण के लिए:
Label("//foo/bar:baz").relative(":quux") == Label("//foo/bar:quux")
Label("//foo/bar:baz").relative("//wiz:quux") == Label("//wiz:quux")
Label("@repo//foo/bar:baz").relative("//wiz:quux") == Label("@repo//wiz:quux")
Label("@repo//foo/bar:baz").relative("//visibility:public") == Label("//visibility:public")
Label("@repo//foo/bar:baz").relative("@other//wiz:quux") == Label("@other//wiz:quux")

अगर सबमिट की गई रिपॉज़िटरी मैपिंग {'@other' : '@remapped'} है, तो यह रीमैपिंग होगी:

Label("@repo//foo/bar:baz").relative("@other//wiz:quux") == Label("@remapped//wiz:quux")

पैरामीटर

पैरामीटर ब्यौरा
relName ज़रूरी है
वह लेबल जिसे इस लेबल के हिसाब से हल किया जाएगा.

workspace_name

string Label.workspace_name

इस लेबल का रिपॉज़िटरी हिस्सा. उदाहरण के लिए,
Label("@foo//bar:baz").workspace_name == "foo"

workspace_root

string Label.workspace_root

execroot के हिसाब से, इस लेबल के फ़ाइल फ़ोल्डर के लिए, एक्सीक्यूशन रूट दिखाता है. उदाहरण के लिए:
Label("@repo//pkg/foo:abc").workspace_root == "external/repo"