Informações Cc

Informar um problema Ver código-fonte

Um provedor para compilação e vinculação de C++. Ele também é um provedor de marcação que informa regras C++ que podem depender da regra com esse provedor. Se não quiser que a regra dependa de C++, ela deve unir o CcInfo em outro provedor.

Participantes

Informações Cc

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

O construtor CcInfo.

Parâmetros

Parâmetro Descrição
compilation_context CompilationContext; or None; default = None
O CompilationContext.
linking_context LinkingContext; or None; default = None
O LinkingContext.
debug_context DebugContext; or None; default = None
O DebugContext.

contexto_de compilação

CompilationContext CcInfo.compilation_context

Retorna o CompilationContext

contexto_vinculação

LinkingContext CcInfo.linking_context

Retorna o LinkingContext

to_json

string CcInfo.to_json()

Obsoleto. Esta API está obsoleta e será removida em breve. Não dependa dele. Ele está desativado com ---incompatible_struct_has_no_methods. Use esta sinalização para verificar se o código é compatível com a remoção iminente.
Cria uma string JSON a partir do parâmetro struct. Esse método só funciona se todos os elementos struct (recursivamente) forem strings, ints, booleans, 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"}}}
.

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

to_proto

string CcInfo.to_proto()

Obsoleto. Esta API está obsoleta e será removida em breve. Não dependa dele. Ele está desativado com ---incompatible_struct_has_no_methods. Use esta sinalização para verificar se o código é compatível com a remoção iminente.
Cria uma mensagem de texto a partir do parâmetro struct. Esse método só funciona se todos os elementos struct (recursivamente) forem strings, ints, booleans, outras structs, ou dicts, ou listas desses tipos. Aspas e novas linhas em strings são escapadas. As chaves de estrutura são iteradas na ordem de classificação. 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
# }

Obsoleto: use proto.encode_text(x) como alternativa.