BazelCon 2022 16-17 নভেম্বর নিউ ইয়র্ক এবং অনলাইনে আসছে। নিবন্ধন আজ!
নতুন: 15 নভেম্বর সম্প্রদায় দিবসের জন্য আমাদের সাথে যোগ দিন! বিস্তারিত এবং নিবন্ধন.

প্রোটোইনফো

সেভ করা পৃষ্ঠা গুছিয়ে রাখতে 'সংগ্রহ' ব্যবহার করুন আপনার পছন্দ অনুযায়ী কন্টেন্ট সেভ করুন ও সঠিক বিভাগে রাখুন।
proto_library দ্বারা প্রদত্ত তথ্য এনক্যাপসুলেট করে।

Rules_proto থেকে এই চিহ্নটি লোড করতে অনুগ্রহ করে `load("@rules_proto//proto:defs.bzl", "ProtoInfo")` ব্যবহার করার কথা বিবেচনা করুন

সদস্যরা

check_deps_sources

depset ProtoInfo.check_deps_sources

'srcs' অ্যাট্রিবিউট থেকে প্রোটো সোর্স। যদি লাইব্রেরি একটি প্রক্সি লাইব্রেরি হয় যার কোনো উৎস নেই, তাহলে এতে এই লাইব্রেরির সরাসরি ডিপ থেকে চেক_ডিপস_সোর্স রয়েছে।

direct_descriptor_set

File ProtoInfo.direct_descriptor_set

প্রত্যক্ষ উৎসের FileDescriptorSet । srcs না থাকলে, একটি খালি ফাইল রয়েছে।

সরাসরি_উৎস

list ProtoInfo.direct_sources

'srcs' অ্যাট্রিবিউট থেকে প্রোটো সোর্স।

proto_source_root

string ProtoInfo.proto_source_root

প্রোটো_লাইব্রেরিতে সংজ্ঞায়িত .proto ফাইলগুলির সাথে সম্পর্কিত ডিরেক্টরি। উদাহরণস্বরূপ, যদি এটি 'a/b' হয় এবং নিয়মে 'a/b/c/d.proto' ফাইলটি উৎস হিসেবে থাকে, তাহলে সেই উৎস ফাইলটি 'import c/d.proto' হিসেবে আমদানি করা হবে।

to_json

string ProtoInfo.to_json()

অবজ্ঞাত । এই API বন্ধ করা হয়েছে এবং শীঘ্রই সরানো হবে। দয়া করে এর উপর নির্ভর করবেন না। এটি ---incompatible_struct_has_no_methods এর সাথে নিষ্ক্রিয় । আপনার কোডটি আসন্ন অপসারণের সাথে সামঞ্জস্যপূর্ণ তা যাচাই করতে এই পতাকাটি ব্যবহার করুন৷
struct প্যারামিটার থেকে একটি JSON স্ট্রিং তৈরি করে। এই পদ্ধতিটি শুধুমাত্র তখনই কাজ করে যখন সমস্ত স্ট্রাকট উপাদান (পুনরাবৃত্তভাবে) স্ট্রিং, ints, বুলিয়ান, অন্যান্য স্ট্রাকস, এই ধরনের একটি তালিকা বা এই ধরনের স্ট্রিং কী এবং মান সহ একটি অভিধান। স্ট্রিংগুলিতে উদ্ধৃতি এবং নতুন লাইনগুলি এড়িয়ে গেছে৷ উদাহরণ:
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) ব্যবহার করুন, যা structs ছাড়া অন্য মানগুলির জন্য কাজ করে এবং struct ক্ষেত্রের নামস্থানকে দূষিত করে না।

to_proto

string ProtoInfo.to_proto()

অবজ্ঞাত । এই API বন্ধ করা হয়েছে এবং শীঘ্রই সরানো হবে। দয়া করে এর উপর নির্ভর করবেন না। এটি ---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) ব্যবহার করুন।

transitive_descriptor_sets

depset ProtoInfo.transitive_descriptor_sets

সমস্ত নির্ভরশীল proto_library নিয়মের FileDescriptorSet ফাইলগুলির একটি সেট, এবং এটির। এটি প্রোটো-কম্পাইলারে --include_imports পাস করার মত নয়। কোনো নির্ভরতা না থাকলে খালি হবে।

ট্রানজিটিভ_আমদানি

depset ProtoInfo.transitive_imports

দুর্বল নির্ভরতা সহ ট্রানজিটিভ আমদানি।

transitive_proto_path

depset ProtoInfo.transitive_proto_path

এই নিয়মের ট্রানজিটিভ ক্লোজার থেকে সংগৃহীত প্রোটো উৎস শিকড়ের একটি সেট।

transitive_sources

depset ProtoInfo.transitive_sources

এই নিয়মের জন্য প্রোটো উত্স এবং এর সমস্ত নির্ভরশীল প্রোটোকল বাফার নিয়ম৷