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 thedemanglefeature.InstructionInfo: A utility type for instruction pointer heuristics.- Functions and utilities to deal with paths from different platforms.
Features
serde(optional): Implementsserde::Deserializeandserde::Serializefor all data types. In thesymboliccrate, 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 Names 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.