Extensions > API reference > DebugPackageInfo

DebugPackageInfo

A provider for the binary file and its associated .dwp files, if fission is enabled.If Fission ({@url https://gcc.gnu.org/wiki/DebugFission}) is not enabled, the dwp file will be null.

DebugPackageInfo

DebugPackageInfo DebugPackageInfo(target_label, stripped_file, unstripped_file, dwp_file=None)

The DebugPackageInfo constructor.

Parameters

Parameter Description
target_label

Label

The label for the *_binary target

stripped_file

File

The stripped file (the explicit ".stripped" target)

unstripped_file

File

The unstripped file (the default executable target).

dwp_file

File; or None

The .dwp file (for fission builds) or null if --fission=no.

dwp_file

File DebugPackageInfo.dwp_file

Returns the .dwp file (for fission builds) or null if --fission=no. May return None.

stripped_file

File DebugPackageInfo.stripped_file

Returns the stripped file (the explicit ".stripped" target).

target_label

Label DebugPackageInfo.target_label

Returns the label for the *_binary target

to_json

string DebugPackageInfo.to_json()

Creates a JSON string from the struct parameter. This method only works if all struct elements (recursively) are strings, ints, booleans, other structs, a list of these types or a dictionary with string keys and values of these types. Quotes and new lines in strings are escaped. Examples:
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"}}}

to_proto

string DebugPackageInfo.to_proto()

Creates a text message from the struct parameter. This method only works if all struct elements (recursively) are strings, ints, booleans, other structs or dicts or lists of these types. Quotes and new lines in strings are escaped. Struct keys are iterated in the sorted order. Examples:
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
# }

unstripped_file

File DebugPackageInfo.unstripped_file

Returns the unstripped file (the default executable target)