DefaultInfo इंस्टेंस में ये फ़ील्ड होते हैं: filesfiles_to_rundata_runfilesdefault_runfiles
सदस्य
DefaultInfo
DefaultInfo DefaultInfo(files=None, runfiles=None, data_runfiles=None, default_runfiles=None, executable=None)
DefaultInfo कंस्ट्रक्टर.
पैरामीटर
| पैरामीटर | ब्यौरा |
|---|---|
files
|
depset; or None;
default = Noneयह File ऑब्जेक्ट का depset है. यह उन डिफ़ॉल्ट आउटपुट को दिखाता है जिन्हें तब बनाया जाता है, जब इस टारगेट को Bazel कमांड लाइन पर तय किया जाता है. डिफ़ॉल्ट रूप से, यह पहले से तय किए गए सभी आउटपुट होते हैं.
|
runfiles
|
runfiles; or None;
default = Nonerunfiles descriptor describing the files that this target needs when run (via the run command or as a tool dependency).
|
data_runfiles
|
runfiles; or None;
default = Noneहमारा सुझाव है कि आप इस पैरामीटर का इस्तेमाल न करें. इसके बारे में ज़्यादा जानने के लिए, "runfiles की ऐसी सुविधाएं जिनका इस्तेमाल नहीं करना चाहिए" लेख पढ़ें रनफ़ाइल डिस्क्रिप्टर, उन रनफ़ाइलों के बारे में बताता है जिनकी ज़रूरत इस टारगेट को तब होती है, जब यहdata एट्रिब्यूट के ज़रिए डिपेंडेंसी होती है.
|
default_runfiles
|
runfiles; or None;
default = Noneहमारा सुझाव है कि आप इस पैरामीटर का इस्तेमाल न करें. इसके बारे में ज़्यादा जानने के लिए, "runfiles की ऐसी सुविधाएं जिनका इस्तेमाल नहीं करना चाहिए" लेख पढ़ें runfiles descriptor describing the runfiles this target needs to run when it is a dependency via any attribute other than thedata attribute.
|
executable
|
File; or None;
default = Noneअगर इस नियम को executable या test के तौर पर मार्क किया गया है, तो यह File ऑब्जेक्ट है. यह उस फ़ाइल को दिखाता है जिसे टारगेट को चलाने के लिए एक्ज़ीक्यूट किया जाना चाहिए. डिफ़ॉल्ट रूप से, यह पहले से तय किया गया आउटपुट ctx.outputs.executable होता है.
|
data_runfiles
runfiles DefaultInfo.data_runfiles
data डिपेंडेंसी एट्रिब्यूट के तौर पर चलाया जाता है. ज़्यादातर मामलों में, default_runfiles पैरामीटर का इस्तेमाल करें. ज़्यादा जानकारी के लिए, "runfiles की उन सुविधाओं के बारे में जानकारी जिन्हें इस्तेमाल नहीं करना चाहिए" लेख पढ़ें.
None को वापस किया जा सकता है.
default_runfiles
runfiles DefaultInfo.default_runfiles
run कमांड के ज़रिए या टूल की डिपेंडेंसी के तौर पर रन किया जाता है.
None को वापस किया जा सकता है.
फ़ाइलें
depset DefaultInfo.files
depset, File ऑब्जेक्ट का एक सेट होता है. ये ऑब्जेक्ट, डिफ़ॉल्ट आउटपुट को दिखाते हैं. इन्हें तब बनाया जाता है, जब 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 पैरामीटर से एक टेक्स्ट मैसेज बनाता है. यह तरीका तभी काम करता है, जब स्ट्रक्चर के सभी एलिमेंट गहराई तक हर स्तर पर इस टाइप के हों: स्ट्रिंग, पूर्णांक, बूलियन, अन्य स्ट्रक्चर या डिक्शनरी या इन टाइप की सूचियां. स्ट्रिंग में मौजूद कोट और नई लाइनों को एस्केप किया जाता है. स्ट्रक्ट कुंजियों को क्रम से लगाकर एक-एक करके प्रोसेस किया जाता है. उदाहरण:
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) का इस्तेमाल करें.