Crate symbolic_demangle
source ·Expand description
Provides demangling support.
Currently supported languages:
- C++ (without windows)
- Rust
- Swift
- ObjC (only symbol detection)
As the demangling schemes for different languages are different, the feature set is also inconsistent. In particular Rust for instance has no overloading so argument types are generally not expected to be encoded into the function name whereas they are in Swift and C++.
Examples
use symbolic_common::types::{Language, Name};
use symbolic_demangle::Demangle;
let name = Name::new("__ZN3std2io4Read11read_to_end17hb85a0f6802e14499E");
assert_eq!(name.detect_language(), Some(Language::Rust));
assert_eq!(&name.try_demangle(Default::default()), "std::io::Read::read_to_end");
Structs
Options for the demangling.
Enums
Defines the output format of the demangler.
Traits
Allows to demangle potentially mangled names.
Functions
Demangles an identifier and falls back to the original symbol.