Informações Cc

Um provedor para compilação e vinculação de C++. Esse também é um provedor de marcação que informa às regras de C++ que elas podem depender da regra com esse provedor. Se a regra não for destinada a depender do C++, ela precisará encapsular a CcInfo em algum outro provedor.

Membros

CcInfo

CcInfo CcInfo(compilation_context=None, linking_context=None, debug_context=None)

O construtor CcInfo.

Parâmetros

Parâmetro Descrição
compilation_context CompilationContext; ou None; o padrão é None
O CompilationContext.
linking_context LinkingContext; ou None; o padrão é None
O LinkingContext.
debug_context DebugContext; ou None; o padrão é None
O DebugContext.

compilation_context

CompilationContext CcInfo.compilation_context

Retorna o CompilationContext

linking_context

LinkingContext CcInfo.linking_context

Retorna o LinkingContext

to_json

string CcInfo.to_json()

Descontinuado. Essa API foi descontinuada e será removida em breve. Não dependa dela. Ela fica desativada com ---incompatible_struct_has_no_methods. Use essa flag para verificar se seu código é compatível com a remoção iminente.
Cria uma string JSON do parâmetro struct. Esse método só funciona se todos os elementos do struct (recursivamente) forem strings, números inteiros, booleanos, outros structs, uma lista desses tipos ou um dicionário com chaves de string e valores desses tipos. Aspas e novas linhas em strings são escapadas. Exemplos:
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"}}}
.

Descontinuado: use json.encode(x) ou json.encode_indent(x, em vez disso, que funcionam para valores diferentes de structs e não poluem o namespace do campo struct.

to_proto

string CcInfo.to_proto()

Descontinuado. Essa API foi descontinuada e será removida em breve. Não dependa dela. Ela fica desativada com ---incompatible_struct_has_no_methods. Use essa flag para verificar se seu código é compatível com a remoção iminente.
Cria uma mensagem de texto com base no parâmetro struct. Esse método só funciona se todos os elementos do struct (recursivamente) forem strings, números inteiros, booleanos, outros structs ou dicionários ou listas desses tipos. Aspas e novas linhas em strings são escapadas. As chaves de struct são iteradas na ordem classificada. Exemplos:
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
# }

Descontinuado: use proto.encode_text(x) em vez disso.