Enum gimli::write::AttributeValue
source · [−]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.”
Block(Vec<u8>)
A slice of an arbitrary number of bytes.
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.”
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.”
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.”
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.”
Sdata(i64)
A signed integer constant.
Udata(u64)
An unsigned integer constant.
Exprloc(Expression)
“The information bytes contain a DWARF expression (see Section 2.5) or location description (see Section 2.6).”
Flag(bool)
A boolean that indicates presence or absence of the attribute.
FlagPresent
An attribute that is always present.
UnitRef(UnitEntryId)
A reference to a DebuggingInformationEntry
in this unit.
DebugInfoRef(Reference)
A reference to a DebuggingInformationEntry
in a potentially different unit.
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.
LineProgramRef
A reference to a line number program.
LocationListRef(LocationListId)
A reference to a location list.
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.
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.
RangeListRef(RangeListId)
A reference to a range list.
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.
StringRef(StringId)
A reference to a string in the .debug_str
section.
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.
LineStringRef(LineStringId)
A reference to a string in the .debug_line_str
section.
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.
Encoding(DwAte)
The value of a DW_AT_encoding
attribute.
DecimalSign(DwDs)
The value of a DW_AT_decimal_sign
attribute.
Endianity(DwEnd)
The value of a DW_AT_endianity
attribute.
Accessibility(DwAccess)
The value of a DW_AT_accessibility
attribute.
Visibility(DwVis)
The value of a DW_AT_visibility
attribute.
Virtuality(DwVirtuality)
The value of a DW_AT_virtuality
attribute.
Language(DwLang)
The value of a DW_AT_language
attribute.
AddressClass(DwAddr)
The value of a DW_AT_address_class
attribute.
IdentifierCase(DwId)
The value of a DW_AT_identifier_case
attribute.
CallingConvention(DwCc)
The value of a DW_AT_calling_convention
attribute.
Inline(DwInl)
The value of a DW_AT_inline
attribute.
Ordering(DwOrd)
The value of a DW_AT_ordering
attribute.
FileIndex(Option<FileId>)
An index into the filename entries from the line number information table for the unit containing this value.
Implementations
Trait Implementations
sourceimpl Clone for AttributeValue
impl Clone for AttributeValue
sourcefn clone(&self) -> AttributeValue
fn clone(&self) -> AttributeValue
Returns a copy of the value. Read more
1.0.0 · sourcefn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read more
sourceimpl Debug for AttributeValue
impl Debug for AttributeValue
sourceimpl PartialEq<AttributeValue> for AttributeValue
impl PartialEq<AttributeValue> for AttributeValue
sourcefn eq(&self, other: &AttributeValue) -> bool
fn eq(&self, other: &AttributeValue) -> bool
This method tests for self
and other
values to be equal, and is used
by ==
. Read more
sourcefn ne(&self, other: &AttributeValue) -> bool
fn ne(&self, other: &AttributeValue) -> bool
This method tests for !=
.
impl Eq for AttributeValue
impl StructuralEq for AttributeValue
impl StructuralPartialEq for AttributeValue
Auto Trait Implementations
impl RefUnwindSafe for AttributeValue
impl Send for AttributeValue
impl Sync for AttributeValue
impl Unpin for AttributeValue
impl UnwindSafe for AttributeValue
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
sourceimpl<Q, K> Equivalent<K> for Q where
Q: Eq + ?Sized,
K: Borrow<Q> + ?Sized,
impl<Q, K> Equivalent<K> for Q where
Q: Eq + ?Sized,
K: Borrow<Q> + ?Sized,
sourcefn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to key
and return true
if they are equal.
sourceimpl<T> ToOwned for T where
T: Clone,
impl<T> ToOwned for T where
T: Clone,
type Owned = T
type Owned = T
The resulting type after obtaining ownership.
sourcefn clone_into(&self, target: &mut T)
fn clone_into(&self, target: &mut T)
toowned_clone_into
)Uses borrowed data to replace owned data, usually by cloning. Read more