डिफ़ॉल्ट जानकारी

वह कंपनी जो किसी टारगेट की डायरेक्ट और ट्रांज़िटिव फ़ाइलों के बारे में सामान्य जानकारी देती है. हर तरह के नियम में यह कंपनी होती है, भले ही उसे नियम के लागू करने वाले फ़ंक्शन से साफ़ तौर पर न दिखाया गया हो. हर DefaultInfo इंस्टेंस में ये फ़ील्ड होते हैं:
  • files
  • files_to_run
  • data_runfiles
  • default_runfiles
इस कंपनी को इस्तेमाल करने के तरीके के बारे में ज़रूरी जानकारी के लिए, नियम पेज देखें.

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

DefaultInfo

DefaultInfo DefaultInfo(files=None, runfiles=None, data_runfiles=None, default_runfiles=None, executable=None)

DefaultInfo कंस्ट्रक्टर.

पैरामीटर

पैरामीटर ब्यौरा
files depset; or None; डिफ़ॉल्ट = कोई नहीं
File में से एक depset ऑब्जेक्ट, जो डिफ़ॉल्ट आउटपुट को दिखाता है. ऐसा तब होता है, जब यह टारगेट bazel कमांड लाइन पर तय किया गया हो. डिफ़ॉल्ट रूप से, ये पहले से एलान किए गए सभी आउटपुट होते हैं.
runfiles runfiles; or None; डिफ़ॉल्ट = कोई नहीं
रनफ़ाइल डिस्क्रिप्टर, जो इस टारगेट को चलाए जाने के दौरान ज़रूरी फ़ाइलों के बारे में बताता है (run कमांड या टूल डिपेंडेंसी के ज़रिए).
data_runfiles runfiles; or None; डिफ़ॉल्ट = कोई नहीं

हमारा सुझाव है कि आप इस पैरामीटर का इस्तेमाल न करें ("रनफ़ाइल सुविधाओं से बचने के लिए," देखें)

रनफ़ाइल डिस्क्रिप्टर, जो इस टारगेट को चलाने के लिए ज़रूरी रन फ़ाइलों के बारे में बताता है, जब यह data एट्रिब्यूट के ज़रिए डिपेंडेंसी होती है.
default_runfiles runfiles; or None; डिफ़ॉल्ट = कोई नहीं

हमारा सुझाव है कि आप इस पैरामीटर का इस्तेमाल न करें ("रनफ़ाइल सुविधाओं से बचने के लिए," देखें)

यह टारगेट, data एट्रिब्यूट के अलावा किसी दूसरे एट्रिब्यूट के ज़रिए डिपेंडेंसी होने पर, इस टारगेट को चलाने के लिए ज़रूरी रन फ़ाइलों के बारे में बताती है.
executable File; or None; डिफ़ॉल्ट = कोई नहीं
अगर यह नियम executable या test के तौर पर मार्क किया गया है, तो यह File ऑब्जेक्ट है. यह उस फ़ाइल को दिखाता है जिसे टारगेट करने के लिए चलाया जाना चाहिए. डिफ़ॉल्ट रूप से, यह पहले से एलान किया गया आउटपुट ctx.outputs.executable होता है.

data_runfiles

runfiles DefaultInfo.data_runfiles

रनफ़ाइल डिस्क्रिप्टर, उन फ़ाइलों के बारे में बताता है जिनकी ज़रूरत इस टारगेट को तब होती है, जब इसे data डिपेंडेंसी एट्रिब्यूट की स्थिति में चलाया जाता है. ज़्यादातर स्थितियों में, default_runfiles पैरामीटर का इस्तेमाल करें. ज़्यादा जानकारी के लिए "रनफ़ाइल की सुविधाओं से बचना" देखें. None वापस किया जा सकता है.

default_runfiles

runfiles DefaultInfo.default_runfiles

रनफ़ाइल डिस्क्रिप्टर, उन फ़ाइलों के बारे में बताता है जिनकी ज़रूरत इस टारगेट को रन करने के दौरान होती है (run कमांड या टूल डिपेंडेंसी के ज़रिए). None वापस किया जा सकता है.

फ़ाइलें

depset DefaultInfo.files

File ऑब्जेक्ट का depset, जो डिफ़ॉल्ट आउटपुट को दिखाता है. ऐसा तब होता है, जब यह टारगेट bazel कमांड लाइन पर तय किया गया हो. डिफ़ॉल्ट रूप से, ये पहले से एलान किए गए सभी आउटपुट होते हैं. None वापस किया जा सकता है.

files_to_run

FilesToRunProvider DefaultInfo.files_to_run

FilesToRunProvider ऑब्जेक्ट, जिसमें टारगेट के एक्ज़ीक्यूटेबल और रनफ़ाइल के बारे में जानकारी होती है. None वापस किया जा सकता है.

to_json

string DefaultInfo.to_json()

अब काम नहीं करता. यह एपीआई अब सेवा में नहीं है. इसे जल्द ही हटा दिया जाएगा. कृपया इस पर निर्भर न रहें. यह ---incompatible_struct_has_no_methods के साथ बंद है. इस फ़्लैग का इस्तेमाल करके यह पुष्टि करें कि आपका कोड, तुरंत हटाए जाने के लिए इस्तेमाल किया जा सकता है या नहीं.
स्ट्रक्चर पैरामीटर से JSON स्ट्रिंग बनाता है. यह तरीका सिर्फ़ तब काम करता है, जब सभी स्ट्रक्चर एलिमेंट (बार-बार आने वाले) स्ट्रिंग, इंंट, बूलियन, अन्य स्ट्रक्चर, इन टाइप की सूची या डिक्शनरी हो, जिसमें स्ट्रिंग की और इन टाइप की वैल्यू हों. स्ट्रिंग में कोट और नई लाइनें एस्केप कर दी जाती हैं. उदाहरण:
struct(key=123).to_json()
# {"key":123}

struct(key=True).to_json()
# {"key":true}

struct(key=[1, 2, 3]).to_json()
# {"key":[1,2,3]}

struct(key='text').to_json()
# {"key":"text"}

struct(key=struct(inner_key='text')).to_json()
# {"key":{"inner_key":"text"}}

struct(key=[struct(inner_key=1), struct(inner_key=2)]).to_json()
# {"key":[{"inner_key":1},{"inner_key":2}]}

struct(key=struct(inner_key=struct(inner_inner_key='text'))).to_json()
# {"key":{"inner_key":{"inner_inner_key":"text"}}}
.

अब काम नहीं करता: इसके बजाय, json.encode(x) या json.encode_indent(x) का इस्तेमाल करें. यह स्ट्रक्चर के अलावा अन्य वैल्यू के लिए काम करता है और स्ट्रक्चर फ़ील्ड नेमस्पेस को प्रदूषित नहीं करता.

to_proto

string DefaultInfo.to_proto()

अब काम नहीं करता. यह एपीआई अब सेवा में नहीं है. इसे जल्द ही हटा दिया जाएगा. कृपया इस पर निर्भर न रहें. यह ---incompatible_struct_has_no_methods के साथ बंद है. इस फ़्लैग का इस्तेमाल करके यह पुष्टि करें कि आपका कोड, तुरंत हटाए जाने के लिए इस्तेमाल किया जा सकता है या नहीं.
स्ट्रक्चर पैरामीटर से टेक्स्ट मैसेज बनाता है. यह तरीका सिर्फ़ तब काम करता है, जब सभी स्ट्रक्चर एलिमेंट (बार-बार आने वाले) स्ट्रिंग, इंट, बूलियन, अन्य निर्देश या डिक्शनरी या इस तरह की सूचियां हों. स्ट्रिंग में कोट और नई लाइनें एस्केप कर दी जाती हैं. स्ट्रक्चर्ड कुंजियों को क्रम से लगाया जाता है. उदाहरण:
struct(key=123).to_proto()
# key: 123

struct(key=True).to_proto()
# key: true

struct(key=[1, 2, 3]).to_proto()
# key: 1
# key: 2
# key: 3

struct(key='text').to_proto()
# key: "text"

struct(key=struct(inner_key='text')).to_proto()
# key {
#   inner_key: "text"
# }

struct(key=[struct(inner_key=1), struct(inner_key=2)]).to_proto()
# key {
#   inner_key: 1
# }
# key {
#   inner_key: 2
# }

struct(key=struct(inner_key=struct(inner_inner_key='text'))).to_proto()
# key {
#    inner_key {
#     inner_inner_key: "text"
#   }
# }

struct(foo={4: 3, 2: 1}).to_proto()
# foo: {
#   key: 4
#   value: 3
# }
# foo: {
#   key: 2
#   value: 1
# }

अब काम नहीं करता: इसके बजाय, proto.encode_text(x) का इस्तेमाल करें.