# msvc-demangler-rust **Repository Path**: udbg/msvc-demangler-rust ## Basic Information - **Project Name**: msvc-demangler-rust - **Description**: No description available - **Primary Language**: Unknown - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2021-12-15 - **Last Updated**: 2024-06-06 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # msvc-demangler msvc-demangler is a crate for Rust that can demangle C++ symbols which use the MSVC mangling scheme. These are emitted by the Microsoft C++ compiler for Windows as well as some others. ## Example ```rust use msvc_demangler; let flags = msvc_demangler::DemangleFlags::llvm(); let result = msvc_demangler::demangle("??_0klass@@QEAAHH@Z", flags).unwrap(); println!("{}", result); ``` ## Behavior It's functionality is similar to `undname` on Windows and the underlying `UnDecorateSymbolName` function. Since Microsoft does not document the mangling scheme this is likely not to be entirely accurate. When unclear the implementation tries to follow what LLVM does. ## License This msvc-demangler is dual licensed under the MIT and the University of Illinois Open Source Licenses. License: MIT/NCSA