Enum gimli::write::AttributeValue[][src]

pub enum AttributeValue {
Show 37 variants Address(Address), Block(Vec<u8>), Data1(u8), Data2(u16), Data4(u32), Data8(u64), Sdata(i64), Udata(u64), Exprloc(Expression), Flag(bool), FlagPresent, UnitRef(UnitEntryId), DebugInfoRef(Reference), DebugInfoRefSup(DebugInfoOffset), LineProgramRef, LocationListRef(LocationListId), DebugMacinfoRef(DebugMacinfoOffset), DebugMacroRef(DebugMacroOffset), RangeListRef(RangeListId), DebugTypesRef(DebugTypeSignature), StringRef(StringId), DebugStrRefSup(DebugStrOffset), LineStringRef(LineStringId), String(Vec<u8>), Encoding(DwAte), DecimalSign(DwDs), Endianity(DwEnd), Accessibility(DwAccess), Visibility(DwVis), Virtuality(DwVirtuality), Language(DwLang), AddressClass(DwAddr), IdentifierCase(DwId), CallingConvention(DwCc), Inline(DwInl), Ordering(DwOrd), FileIndex(Option<FileId>),
}
Expand description

The value of an attribute in a DebuggingInformationEntry.

Variants

Address(Address)

“Refers to some location in the address space of the described program.”

Tuple Fields of Address

0: Address
Block(Vec<u8>)

A slice of an arbitrary number of bytes.

Tuple Fields of Block

0: Vec<u8>
Data1(u8)

A one byte constant data value. How to interpret the byte depends on context.

From section 7 of the standard: “Depending on context, it may be a signed integer, an unsigned integer, a floating-point constant, or anything else.”

Tuple Fields of Data1

0: u8
Data2(u16)

A two byte constant data value. How to interpret the bytes depends on context.

This value will be converted to the target endian before writing.

From section 7 of the standard: “Depending on context, it may be a signed integer, an unsigned integer, a floating-point constant, or anything else.”

Tuple Fields of Data2

0: u16
Data4(u32)

A four byte constant data value. How to interpret the bytes depends on context.

This value will be converted to the target endian before writing.

From section 7 of the standard: “Depending on context, it may be a signed integer, an unsigned integer, a floating-point constant, or anything else.”

Tuple Fields of Data4

0: u32
Data8(u64)

An eight byte constant data value. How to interpret the bytes depends on context.

This value will be converted to the target endian before writing.

From section 7 of the standard: “Depending on context, it may be a signed integer, an unsigned integer, a floating-point constant, or anything else.”

Tuple Fields of Data8

0: u64
Sdata(i64)

A signed integer constant.

Tuple Fields of Sdata

0: i64
Udata(u64)

An unsigned integer constant.

Tuple Fields of Udata

0: u64
Exprloc(Expression)

“The information bytes contain a DWARF expression (see Section 2.5) or location description (see Section 2.6).”

Tuple Fields of Exprloc

0: Expression
Flag(bool)

A boolean that indicates presence or absence of the attribute.

Tuple Fields of Flag

0: bool
FlagPresent

An attribute that is always present.

UnitRef(UnitEntryId)

A reference to a DebuggingInformationEntry in this unit.

Tuple Fields of UnitRef

0: UnitEntryId
DebugInfoRef(Reference)

A reference to a DebuggingInformationEntry in a potentially different unit.

Tuple Fields of DebugInfoRef

0: Reference
DebugInfoRefSup(DebugInfoOffset)

An offset into the .debug_info section of the supplementary object file.

The API does not currently assist with generating this offset. This variant will be removed from the API once support for writing supplementary object files is implemented.

Tuple Fields of DebugInfoRefSup

0: DebugInfoOffset
LineProgramRef

A reference to a line number program.

LocationListRef(LocationListId)

A reference to a location list.

Tuple Fields of LocationListRef

0: LocationListId
DebugMacinfoRef(DebugMacinfoOffset)

An offset into the .debug_macinfo section.

The API does not currently assist with generating this offset. This variant will be removed from the API once support for writing .debug_macinfo sections is implemented.

Tuple Fields of DebugMacinfoRef

0: DebugMacinfoOffset
DebugMacroRef(DebugMacroOffset)

An offset into the .debug_macro section.

The API does not currently assist with generating this offset. This variant will be removed from the API once support for writing .debug_macro sections is implemented.

Tuple Fields of DebugMacroRef

0: DebugMacroOffset
RangeListRef(RangeListId)

A reference to a range list.

Tuple Fields of RangeListRef

0: RangeListId
DebugTypesRef(DebugTypeSignature)

A type signature.

The API does not currently assist with generating this signature. This variant will be removed from the API once support for writing .debug_types sections is implemented.

Tuple Fields of DebugTypesRef

0: DebugTypeSignature
StringRef(StringId)

A reference to a string in the .debug_str section.

Tuple Fields of StringRef

0: StringId
DebugStrRefSup(DebugStrOffset)

An offset into the .debug_str section of the supplementary object file.

The API does not currently assist with generating this offset. This variant will be removed from the API once support for writing supplementary object files is implemented.

Tuple Fields of DebugStrRefSup

0: DebugStrOffset
LineStringRef(LineStringId)

A reference to a string in the .debug_line_str section.

Tuple Fields of LineStringRef

0: LineStringId
String(Vec<u8>)

A slice of bytes representing a string. Must not include null bytes. Not guaranteed to be UTF-8 or anything like that.

Tuple Fields of String

0: Vec<u8>
Encoding(DwAte)

The value of a DW_AT_encoding attribute.

Tuple Fields of Encoding

0: DwAte
DecimalSign(DwDs)

The value of a DW_AT_decimal_sign attribute.

Tuple Fields of DecimalSign

0: DwDs
Endianity(DwEnd)

The value of a DW_AT_endianity attribute.

Tuple Fields of Endianity

0: DwEnd
Accessibility(DwAccess)

The value of a DW_AT_accessibility attribute.

Tuple Fields of Accessibility

0: DwAccess
Visibility(DwVis)

The value of a DW_AT_visibility attribute.

Tuple Fields of Visibility

0: DwVis
Virtuality(DwVirtuality)

The value of a DW_AT_virtuality attribute.

Tuple Fields of Virtuality

0: DwVirtuality
Language(DwLang)

The value of a DW_AT_language attribute.

Tuple Fields of Language

0: DwLang
AddressClass(DwAddr)

The value of a DW_AT_address_class attribute.

Tuple Fields of AddressClass

0: DwAddr
IdentifierCase(DwId)

The value of a DW_AT_identifier_case attribute.

Tuple Fields of IdentifierCase

0: DwId
CallingConvention(DwCc)

The value of a DW_AT_calling_convention attribute.

Tuple Fields of CallingConvention

0: DwCc
Inline(DwInl)

The value of a DW_AT_inline attribute.

Tuple Fields of Inline

0: DwInl
Ordering(DwOrd)

The value of a DW_AT_ordering attribute.

Tuple Fields of Ordering

0: DwOrd
FileIndex(Option<FileId>)

An index into the filename entries from the line number information table for the unit containing this value.

Tuple Fields of FileIndex

0: Option<FileId>

Implementations

Return the form that will be used to encode this value.

Trait Implementations

Returns a copy of the value. Read more

Performs copy-assignment from source. Read more

Formats the value using the given formatter. Read more

This method tests for self and other values to be equal, and is used by ==. Read more

This method tests for !=.

Auto Trait Implementations

Blanket Implementations

Gets the TypeId of self. Read more

Immutably borrows from an owned value. Read more

Mutably borrows from an owned value. Read more

Compare self to key and return true if they are equal.

Performs the conversion.

Performs the conversion.

The resulting type after obtaining ownership.

Creates owned data from borrowed data, usually by cloning. Read more

🔬 This is a nightly-only experimental API. (toowned_clone_into)

recently added

Uses borrowed data to replace owned data, usually by cloning. Read more

The type returned in the event of a conversion error.

Performs the conversion.

The type returned in the event of a conversion error.

Performs the conversion.