तारीख सेव करें: BazelCon 2023, 24 से 25 अक्टूबर तक Google म्यूनिख में होगा! ज़्यादा जानें

इंस्ट्रूमेंट की गई फ़ाइलें जानकारी

किसी समस्या की शिकायत करें स्रोत देखें

इसमें कोड कवरेज डेटा इकट्ठा करने के लिए, --instrumentation_filter से मेल खाने वाले नियम टारगेट के लिए, सोर्स फ़ाइलों और इंस्ट्रूमेंटेशन मेटाडेटा फ़ाइलों से जुड़ी जानकारी शामिल है. जब कवरेज डेटा इकट्ठा करने की सुविधा चालू होती है, तो instrumented_files और metadata_files में मिले-जुले पाथ वाले मेनिफ़ेस्ट को, जांच कार्रवाई में इनपुट के तौर पर पास किया जाता है. साथ ही, मेनिफ़ेस्ट के पाथ को एनवायरमेंट वैरिएबल COVERAGE_MANIFEST में नोट किया जाता है. मेटाडेटा फ़ाइलों को जांच फ़ाइलों में इनपुट के तौर पर पास किया जाता है, लेकिन सोर्स फ़ाइलों को नहीं. जब InstrumentedFilesInfo को किसी खास मकसद के लागू करने के फ़ंक्शन के ज़रिए दिखाया जाता है, तो बेस नियम टारगेट से InstrumentedFilesInfo को अनदेखा कर दिया जाता है.

पैसे चुकाकर बने सदस्य

इंस्ट्रूमेंटेड_फ़ाइलें

depset InstrumentedFilesInfo.instrumented_files

File ऑब्जेक्ट में से depset, इस टारगेट के लिए इंस्ट्रुमेंटेड सोर्स फ़ाइलों और इसकी डिपेंडेंसी के बारे में बताने वाला ऑब्जेक्ट.

मेटाडेटा_फ़ाइलें

depset InstrumentedFilesInfo.metadata_files

File में से depset ऑब्जेक्ट, इस टारगेट के लिए कवरेज मेटाडेटा फ़ाइलों और इसकी डिपेंडेंसी को दिखाते हैं. इन फ़ाइलों में अतिरिक्त जानकारी होती है, जो कोड की कार्रवाई होने के बाद एलसीओवी फ़ॉर्मैट में आउटपुट जनरेट करने के लिए ज़रूरी होती है. उदाहरण के लिए, gcc के -ftest-coverage के साथ चलने पर जनरेट होने वाली .gcno फ़ाइलें.

to_json

string InstrumentedFilesInfo.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 InstrumentedFilesInfo.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) का इस्तेमाल करें.