उदाहरण: यहां दिए गए नियम को, rule() फ़ंक्शन के build_setting पैरामीटर को सेट करके, बिल्ड सेटिंग के तौर पर मार्क किया गया है. खास तौर पर, यह int टाइप की बिल्ड सेटिंग है और यह flag है. इसका मतलब है कि इस बिल्ड सेटिंग को कमांड लाइन पर कॉल किया जा सकता है.
my_rule = rule(
implementation = _impl,
build_setting = config.int(flag = True),
...
)सदस्य
बूल
BuildSetting config.bool(*, flag=False)
पैरामीटर
| पैरामीटर | ब्यौरा |
|---|---|
flag
|
bool;
डिफ़ॉल्ट रूप से Falseहोता है यह बताता है कि कमांड लाइन पर इस बिल्ड सेटिंग को कॉल किया जा सकता है या नहीं. |
exec
ExecTransitionFactory config.exec(exec_group=None)
पैरामीटर
| पैरामीटर | ब्यौरा |
|---|---|
exec_group
|
string; या None;
डिफ़ॉल्ट रूप से Noneहोता है यह उस एक्ज़ीक्यूशन ग्रुप का नाम है जिसके एक्ज़ीक्यूशन प्लैटफ़ॉर्म का इस्तेमाल यह ट्रांज़िशन करेगा. अगर यह विकल्प नहीं दिया जाता है, तो यह एक्ज़ेक ट्रांज़िशन, टारगेट के डिफ़ॉल्ट एक्ज़ीक्यूशन प्लैटफ़ॉर्म का इस्तेमाल करेगा. |
int
BuildSetting config.int(*, flag=False)
पैरामीटर
| पैरामीटर | ब्यौरा |
|---|---|
flag
|
bool;
डिफ़ॉल्ट रूप से Falseहोता है यह बताता है कि कमांड लाइन पर इस बिल्ड सेटिंग को कॉल किया जा सकता है या नहीं. |
कोई नहीं
transition config.none()
स्ट्रिंग
BuildSetting config.string(*, flag=False, allow_multiple=False)
पैरामीटर
| पैरामीटर | ब्यौरा |
|---|---|
flag
|
bool;
डिफ़ॉल्ट रूप से Falseहोता है यह बताता है कि कमांड लाइन पर इस बिल्ड सेटिंग को कॉल किया जा सकता है या नहीं. |
allow_multiple
|
bool;
डिफ़ॉल्ट रूप से Falseहोता है इस्तेमाल नहीं किया जाता. इसके बजाय, repeatable = True के साथ string_list सेटिंग का इस्तेमाल करें. अगर यह सेट होता है, तो इस फ़्लैग को कमांड लाइन पर कई बार सेट किया जा सकता है. ट्रांज़िशन और बिल्ड सेटिंग लागू करने वाले फ़ंक्शन में ऐक्सेस किए गए फ़्लैग की वैल्यू, स्ट्रिंग की सूची होगी. इंसर्शन ऑर्डर और दोहराई गई वैल्यू, दोनों को बनाए रखा जाता है. अगर आपको अलग-अलग व्यवहार चाहिए, तो इस सूची को बिल्ड सेटिंग लागू करने वाले फ़ंक्शन में पोस्ट-प्रोसेस किया जा सकता है.
|
string_list
BuildSetting config.string_list(*, flag=False, repeatable=False)
--//my/setting=foo,bar.
पैरामीटर
| पैरामीटर | ब्यौरा |
|---|---|
flag
|
bool;
डिफ़ॉल्ट रूप से Falseहोता है यह बताता है कि कमांड लाइन पर इस बिल्ड सेटिंग को कॉल किया जा सकता है या नहीं. |
repeatable
|
bool;
डिफ़ॉल्ट वैल्यू Falseहै अगर इस फ़्लैग को सेट किया जाता है, तो कॉमा से अलग की गई वैल्यू के बजाय, इसे कमांड लाइन पर कई बार सेट किया जा सकता है. साथ ही, हर वैल्यू को एक स्ट्रिंग के तौर पर माना जाता है, ताकि उसे सूची की वैल्यू में जोड़ा जा सके. इंसर्शन ऑर्डर और दोहराई गई वैल्यू, दोनों को बनाए रखा जाता है. अगर आपको अलग-अलग व्यवहार चाहिए, तो इस सूची को बिल्ड सेटिंग लागू करने वाले फ़ंक्शन में पोस्ट-प्रोसेस किया जा सकता है. |
string_set
BuildSetting config.string_set(*, flag=False, repeatable=False)
--//my/setting=foo,bar का इस्तेमाल करके कोई सेट पास करें.string_list के उलट, एलिमेंट के क्रम से कोई फ़र्क़ नहीं पड़ता. साथ ही, हर एलिमेंट का सिर्फ़ एक इंस्टेंस बनाए रखा जाता है. जिन फ़्लैग के लिए इन प्रॉपर्टी की ज़रूरत नहीं होती उनके लिए, string_list के बजाय इसका इस्तेमाल करने का सुझाव दिया जाता है. इससे, फ़ालतू कॉन्फ़िगरेशन फ़ोर्क करने से बचकर, बिल्ड की परफ़ॉर्मेंस को बेहतर बनाया जा सकता है.
पैरामीटर
| पैरामीटर | ब्यौरा |
|---|---|
flag
|
bool;
डिफ़ॉल्ट रूप से Falseहोता है यह बताता है कि कमांड लाइन पर इस बिल्ड सेटिंग को कॉल किया जा सकता है या नहीं. |
repeatable
|
bool;
डिफ़ॉल्ट वैल्यू Falseहै अगर यह फ़्लैग सेट किया जाता है, तो कॉमा से अलग की गई वैल्यू के बजाय, इस फ़्लैग को कमांड लाइन पर कई बार सेट किया जा सकता है. साथ ही, हर वैल्यू को सेट वैल्यू में जोड़ने के लिए, एक स्ट्रिंग के तौर पर माना जाता है. दोहराई गई वैल्यू का सिर्फ़ एक इंस्टेंस सेव किया जाता है. साथ ही, वैल्यू को किस क्रम में डाला गया है, इससे कोई फ़र्क़ नहीं पड़ता. |
टारगेट
transition config.target()
attr.label() में cfg = "target" के बराबर.