2022-09-08 14:27:05 -07:00
|
|
|
# cwdemangle [![Build Status]][actions] [![Latest Version]][crates.io] [![Api Rustdoc]][rustdoc] ![Rust Version]
|
2022-09-03 05:47:21 -07:00
|
|
|
|
2022-09-03 06:11:44 -07:00
|
|
|
[Build Status]: https://github.com/encounter/cwdemangle/actions/workflows/build.yaml/badge.svg
|
2022-09-03 05:47:21 -07:00
|
|
|
[actions]: https://github.com/encounter/cwdemangle/actions
|
2022-09-08 14:27:05 -07:00
|
|
|
[Latest Version]: https://img.shields.io/crates/v/cwdemangle.svg
|
|
|
|
[crates.io]: https://crates.io/crates/cwdemangle
|
|
|
|
[Api Rustdoc]: https://img.shields.io/badge/api-rustdoc-blue.svg
|
|
|
|
[rustdoc]: https://docs.rs/cwdemangle
|
2023-02-02 12:59:55 -08:00
|
|
|
[Rust Version]: https://img.shields.io/badge/rust-1.58+-blue.svg?maxAge=3600
|
2022-09-03 05:47:21 -07:00
|
|
|
|
2022-09-03 06:06:29 -07:00
|
|
|
A CodeWarrior C++ symbol demangler.
|
2022-09-03 05:47:21 -07:00
|
|
|
|
2024-03-13 16:32:23 -07:00
|
|
|
## Usage
|
2022-09-03 05:47:21 -07:00
|
|
|
|
2024-03-13 16:32:23 -07:00
|
|
|
### CLI
|
|
|
|
|
|
|
|
Static binaries available from [releases](https://github.com/encounter/cwdemangle/releases) or install via `cargo install cwdemangle-bin`.
|
2022-09-03 05:47:21 -07:00
|
|
|
|
|
|
|
```shell
|
|
|
|
cwdemangle 'BuildLight__9CGuiLightCFv'
|
|
|
|
```
|
|
|
|
|
2024-03-13 16:32:23 -07:00
|
|
|
Pass `--help` to see available options.
|
|
|
|
|
|
|
|
### Library
|
|
|
|
|
|
|
|
- No dependencies
|
|
|
|
- `#![no_std]` compatible (requires `alloc`)
|
|
|
|
|
|
|
|
Cargo.toml:
|
|
|
|
|
|
|
|
```toml
|
|
|
|
[dependencies]
|
|
|
|
cwdemangle = "0.2"
|
|
|
|
```
|
|
|
|
|
|
|
|
Usage:
|
2022-09-03 05:47:21 -07:00
|
|
|
|
|
|
|
```rust
|
2022-11-05 09:56:23 -07:00
|
|
|
use cwdemangle::{demangle, DemangleOptions};
|
2022-09-03 05:47:21 -07:00
|
|
|
|
2024-03-13 16:32:23 -07:00
|
|
|
let result = demangle("BuildLight__9CGuiLightCFv", &DemangleOptions::default());
|
|
|
|
assert_eq!(result, Some("CGuiLight::BuildLight() const".to_string()));
|
2022-09-03 05:47:21 -07:00
|
|
|
```
|
|
|
|
|
|
|
|
### License
|
|
|
|
|
|
|
|
Licensed under either of
|
|
|
|
|
|
|
|
* Apache License, Version 2.0, ([LICENSE-APACHE](LICENSE-APACHE) or http://www.apache.org/licenses/LICENSE-2.0)
|
|
|
|
* MIT license ([LICENSE-MIT](LICENSE-MIT) or http://opensource.org/licenses/MIT)
|
|
|
|
|
|
|
|
at your option.
|
|
|
|
|
|
|
|
### Contribution
|
|
|
|
|
|
|
|
Unless you explicitly state otherwise, any contribution intentionally submitted
|
|
|
|
for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any
|
|
|
|
additional terms or conditions.
|