RunEnvironmentInfo

यह एक ऐसा प्रोवाइडर है जिसे एक्ज़ीक्यूट किए जा सकने वाले नियमों से वापस किया जा सकता है. इससे उस एनवायरमेंट को कंट्रोल किया जा सकता है जिसमें उनका एक्ज़ीक्यूट किया जा सकने वाला कोड चलता है.

सदस्य

एनवायरमेंट

dict RunEnvironmentInfo.environment

यह स्ट्रिंग कुंजियों और वैल्यू का एक मैप है. यह एनवायरमेंट वैरिएबल और उनकी वैल्यू दिखाता है. जब इस प्रोवाइडर को वापस करने वाले टारगेट को टेस्ट के तौर पर या रन कमांड के ज़रिए एक्ज़ीक्यूट किया जाता है, तब ये उपलब्ध होंगे.

inherited_environment

List RunEnvironmentInfo.inherited_environment

यह एनवायरमेंट वैरिएबल के नामों का एक क्रम है. जब इस प्रोवाइडर को वापस करने वाले टारगेट को टेस्ट के तौर पर या रन कमांड के ज़रिए एक्ज़ीक्यूट किया जाता है, तब ये वैरिएबल शेल एनवायरमेंट से ली गई अपनी मौजूदा वैल्यू के साथ उपलब्ध होते हैं. अगर कोई वैरिएबल environment और inherited_environment, दोनों में शामिल है, तो शेल एनवायरमेंट से इनहेरिट की गई वैल्यू को प्राथमिकता दी जाएगी.

to_json

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