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

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

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

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

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

runfiles डिस्क्रिप्टर, जो उन runfiles के बारे में बताता है जिन्हें data एट्रिब्यूट के अलावा किसी अन्य एट्रिब्यूट की मदद से, इस टारगेट को चलाने की ज़रूरत होती है.
executable File; or None; default = 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 ऑब्जेक्ट, बिल्ड के लिए डिफ़ॉल्ट आउटपुट दिखाता है. ऐसा तब होता है, जब इस टारगेट को बेज़ल कमांड लाइन पर बताया गया हो. डिफ़ॉल्ट रूप से, यह पहले से एलान किए गए सभी आउटपुट होते हैं. 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) का इस्तेमाल करें.