CcToolchainConfigInfo

Thêm lớp khả năng định cấu hình cho các quy tắc C++. Đóng gói các thông tin cụ thể phụ thuộc vào nền tảng của các thao tác C++ thông qua các tính năng và cấu hình thao tác. Lớp này được dùng để định cấu hình chuỗi công cụ C++ và sau đó dùng để tạo dòng lệnh. Thay thế chức năng của tệp CROSSTOOL.

Hội viên

proto

string CcToolchainConfigInfo.proto

Trả về proto văn bản CToolchain từ dữ liệu CcToolchainConfigInfo.

to_json

string CcToolchainConfigInfo.to_json()

Không dùng nữa. API này không được dùng nữa và sẽ sớm bị loại bỏ. Vui lòng không phụ thuộc vào API này. API này bị tắt bằng ---incompatible_struct_has_no_methods. Hãy dùng cờ này để xác minh rằng mã của bạn tương thích với việc sắp bị loại bỏ.
Tạo một chuỗi JSON từ tham số struct. Phương thức này chỉ hoạt động nếu tất cả các phần tử struct (đệ quy) là chuỗi, số nguyên, boolean, các struct khác, danh sách các loại này hoặc từ điển có khoá chuỗi và giá trị của các loại này. Dấu ngoặc kép và dòng mới trong chuỗi được thoát. Ví dụ:
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"}}}
.

Không dùng nữa: thay vào đó, hãy dùng json.encode(x) hoặc json.encode_indent(x). Các hàm này hoạt động cho các giá trị khác ngoài struct và không làm ô nhiễm không gian tên trường struct.

to_proto

string CcToolchainConfigInfo.to_proto()

Không dùng nữa. API này không được dùng nữa và sẽ sớm bị loại bỏ. Vui lòng không phụ thuộc vào API này. API này bị tắt bằng ---incompatible_struct_has_no_methods. Hãy dùng cờ này để xác minh rằng mã của bạn tương thích với việc sắp bị loại bỏ.
Tạo một thông báo văn bản từ tham số struct. Phương thức này chỉ hoạt động nếu tất cả các phần tử struct (đệ quy) là chuỗi, số nguyên, boolean, các struct khác hoặc dict hoặc danh sách các loại này. Dấu ngoặc kép và dòng mới trong chuỗi được thoát. Các khoá struct được lặp lại theo thứ tự đã sắp xếp. Ví dụ:
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
# }

Không dùng nữa: thay vào đó, hãy dùng proto.encode_text(x).