Crate symbolic_common
source · [−]Expand description
Common functionality for symbolic
.
This crate exposes a set of key types:
ByteView
: Gives access to binary data in-memory or on the file system.SelfCell
: Allows to create self-referential types.Name
: A symbol name that can be demangled with thedemangle
feature.InstructionInfo
: A utility type for instruction pointer heuristics.- Functions and utilities to deal with paths from different platforms.
Features
serde
(optional): Implementsserde::Deserialize
andserde::Serialize
for all data types. In thesymbolic
crate, this feature is exposed viacommon-serde
.
This module is part of the symbolic
crate.
Structs
Wrapper around DebugId
for Breakpad formatting.
A smart pointer for byte data.
Unique platform-dependent identifier of code files.
Unique identifier for debug information files and their debug information.
Helper to work with instruction addresses.
The name of a potentially mangled symbol.
Indicates an error parsing a CodeId
.
Indicates an error parsing a DebugId
.
A container carrying a derived object alongside its owner.
An error returned for an invalid Arch
.
An error returned for an invalid Language
.
A Universally Unique Identifier (UUID).
Enums
An enumeration of CPU architectures and variants.
Represents a family of CPUs.
A programming language declared in debugging information.
A Name
s mangling state.
Traits
Safe downcasting of dependent lifetime bounds on structs.
Extensions to Path
for handling dSYM
directories.
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.
Functions
Simplifies paths by stripping redundant components.
Joins paths of various platforms.
Trims a path to a given length.
Splits off the last component of a path.
Splits off the last component of a path given as bytes.