πŸ“¦ rust-lang / rustc-demangle

Rust symbol demangling

β˜… 293 stars β‘‚ 61 forks πŸ‘ 293 watching βš–οΈ Apache License 2.0
πŸ“₯ Clone https://github.com/rust-lang/rustc-demangle.git
HTTPS git clone https://github.com/rust-lang/rustc-demangle.git
SSH git clone git@github.com:rust-lang/rustc-demangle.git
CLI gh repo clone rust-lang/rustc-demangle
LeΓ³n Orell Valerian Liehr LeΓ³n Orell Valerian Liehr Merge pull request #88 from rust-lang/release-plz-2026-01-15T15-09-27Z ca5202e 4 days ago πŸ“ History
πŸ“‚ main View all commits β†’
πŸ“ .github
πŸ“ crates
πŸ“ fuzz
πŸ“ src
πŸ“„ .gitignore
πŸ“„ Cargo.toml
πŸ“„ CHANGELOG.md
πŸ“„ LICENSE-APACHE
πŸ“„ LICENSE-MIT
πŸ“„ README.md
πŸ“„ README.md

rustc-demangle

Demangling for Rust symbols, written in Rust.

Documentation

Usage

You can add this as a dependency via your Cargo.toml

[dependencies]
rustc-demangle = "0.1"

and then be sure to check out the crate documentation for usage.

Usage from non-Rust languages

You can also use this crate from other languages via the C API wrapper in the crates/capi directory. This can be build with:

$ cargo build -p rustc-demangle-capi --release

You'll then find target/release/librustc_demangle.a and target/release/librustc_demangle.so (or a different name depending on your platform). These objects implement the interface specified in crates/capi/include/rustc_demangle.h.

If your build system does not support Rust, there is also a mostly-identical C version in the crates/native-c which you can use via copy-paste or as a git submodule. Read crates/native-c/README.md for more details. It is likely to be less supported than the Rust version, so it is better to use the Rust version if your build system supports it.

Both the Rust and C versions don't require memory allocation or any other operating-system support.

License

This project is licensed under either of

http://www.apache.org/licenses/LICENSE-2.0) http://opensource.org/licenses/MIT)

at your option.

Contribution

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in rustc-demangle you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.