Crate gimli[−][src]
gimli
is a library for reading and writing the
DWARF debugging format.
See the read and write modules for examples and API documentation.
Cargo Features
Cargo features that can be enabled with gimli
:
-
std
: Enabled by default. Use thestd
library. Disabling this feature allows usinggimli
in embedded environments that do not have access tostd
. Note that even whenstd
is disabled,gimli
still requires an implementation of thealloc
crate. -
read
: Enabled by default. Enables theread
module. Use ofstd
is optional. -
write
: Enabled by default. Enables thewrite
module. Always uses thestd
library.
Re-exports
pub use crate::constants::*; |
pub use crate::read::*; |
Modules
constants | Constant definitions. |
leb128 | Read and write DWARF’s “Little Endian Base 128” (LEB128) variable length integer encoding. |
read | Read DWARF debugging information. |
write | Write DWARF debugging information. |
Structs
Arm | ARM architecture specific definitions. |
BigEndian | Big endian byte order. |
DebugAbbrevOffset | An offset into the |
DebugAddrBase | An offset to a set of entries in the |
DebugAddrIndex | An index into a set of addresses in the |
DebugFrameOffset | An offset into the |
DebugInfoOffset | An offset into the |
DebugLineOffset | An offset into the |
DebugLineStrOffset | An offset into the |
DebugLocListsBase | An offset to a set of location list offsets in the |
DebugLocListsIndex | An index into a set of location list offsets in the |
DebugMacinfoOffset | An offset into the |
DebugMacroOffset | An offset into the |
DebugRngListsBase | An offset to a set of range list offsets in the |
DebugRngListsIndex | An index into a set of range list offsets in the |
DebugStrOffset | An offset into the |
DebugStrOffsetsBase | An offset to a set of entries in the |
DebugStrOffsetsIndex | An index into a set of entries in the |
DebugTypeSignature | A type signature as used in the |
DebugTypesOffset | An offset into the |
DwoId | An optionally-provided implementation-defined compilation unit ID to enable split DWARF and linking a split compilation unit back together. |
EhFrameOffset | An offset into the |
Encoding | Encoding parameters that are commonly used for multiple DWARF sections. |
LineEncoding | Encoding parameters for a line number program. |
LittleEndian | Little endian byte order. |
LocationListsOffset | An offset into either the |
RangeListsOffset | An offset into either the |
Register | A DWARF register number. |
X86 | Intel i386 architecture specific definitions. |
X86_64 | AMD64 architecture specific definitions. |
Enums
DwarfFileType | The “type” of file with DWARF debugging information. This determines, among other things, which files DWARF sections should be loaded from. |
Format | Whether the format of a compilation unit is 32- or 64-bit. |
RunTimeEndian | Byte order that is selectable at runtime. |
SectionId | An identifier for a DWARF section. |
UnitSectionOffset | An offset into the |
Traits
CloneStableDeref | An unsafe marker trait for types where clones deref to the same address. This has all the requirements of StableDeref, and additionally requires that after calling clone(), both the old and new value deref to the same address. For example, Rc and Arc implement CloneStableDeref, but Box and Vec do not. |
Endianity | A trait describing the endianity of some buffer. |
StableDeref | An unsafe marker trait for types that deref to a stable address, even when moved. For example, this is implemented by Box, Vec, Rc, Arc and String, among others. Even when a Box is moved, the underlying storage remains at a fixed location. |
Type Definitions
NativeEndian | The native endianity for the target platform. |