rules_proto से इस सिंबल को लोड करने के लिए, कृपया `load("@rules_proto//proto:defs.bzl", "ProtoInfo")` का इस्तेमाल करें.
सदस्य
- check_deps_sources
- direct_descriptor_set
- direct_sources
- proto_source_root
- to_json
- to_proto
- transitive_descriptor_sets
- transitive_imports
- transitive_proto_path
- transitive_sources
check_deps_sources
depset ProtoInfo.check_deps_sources'srcs' से मिले प्रोटो सोर्स एट्रिब्यूट की वैल्यू सबमिट करें. अगर लाइब्रेरी ऐसी प्रॉक्सी लाइब्रेरी है जिसमें कोई सोर्स नहीं है, तो इसमें इस लाइब्रेरी के डायरेक्ट डिपार्टमेंट से check_deps_sources शामिल होते हैं.
direct_descriptor_set
File ProtoInfo.direct_descriptor_setडायरेक्ट सोर्स का FileDescriptorSet. अगर कोई सोर्स नहीं है, तो फ़ाइल में एक खाली फ़ाइल होगी.
direct_sources
list ProtoInfo.direct_sources'srcs' से मिले प्रोटो सोर्स एट्रिब्यूट की वैल्यू सबमिट करें.
proto_source_root
string ProtoInfo.proto_source_rootवह डायरेक्ट्री जिससे Proto_library में तय की गई .proto फ़ाइलों को तय किया गया है. उदाहरण के लिए, अगर यह 'a/b' है और नियम में 'a/b/c/d.proto' फ़ाइल है सोर्स के तौर पर, वह सोर्स फ़ाइल 'इंपोर्ट c/d.proto' के तौर पर इंपोर्ट की जाएगी
to_json
string ProtoInfo.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 ProtoInfo.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) का इस्तेमाल करें.
transitive_descriptor_sets
depset ProtoInfo.transitive_descriptor_setsयह सभी डिपेंडेंट Proto_library नियमों की FileDescriptorSet फ़ाइलों का सेट होता है और इस फ़ाइल का. यह प्रोटोकॉल-कंपाइलर में --include_Imports को पास करने के समान नहीं है. अगर कोई डिपेंडेंसी नहीं है, तो यह फ़ील्ड खाली रहेगा.
transitive_imports
depset ProtoInfo.transitive_importsट्रांज़िटिव इंपोर्ट, जिनमें कमज़ोर डिपेंडेंसी शामिल हैं.
transitive_proto_path
depset ProtoInfo.transitive_proto_pathइस नियम के ट्रांज़िटिव क्लोज़र से इकट्ठा किए गए प्रोटो सोर्स रूट का सेट.
transitive_sources
depset ProtoInfo.transitive_sourcesइस नियम और इसके सभी डिपेंडेंट प्रोटोकॉल बफ़र नियमों के प्रोटो सोर्स.