From 078d387f9e8d00e01e68e0d16d0d3b30fbee02b3 Mon Sep 17 00:00:00 2001 From: TheCPP Date: Fri, 10 May 2024 19:38:45 +0200 Subject: [PATCH 1/4] added simple example + fixed warning in ast.rs --- examples/simple.rs | 15 +++++++++++++++ src/ast.rs | 1 + 2 files changed, 16 insertions(+) create mode 100644 examples/simple.rs diff --git a/examples/simple.rs b/examples/simple.rs new file mode 100644 index 0000000..72d9ae9 --- /dev/null +++ b/examples/simple.rs @@ -0,0 +1,15 @@ +use cpp_demangle::Symbol; + +pub fn main() -> Result<(), Box> { + + let mangled = b"_ZN5space3fooEibc"; + + let sym = Symbol::new(&mangled[..])?; + let demangled = sym.to_string(); + + println!("{}", demangled); + + assert_eq!(demangled, "space::foo(int, bool, char)"); + + Ok(()) +} \ No newline at end of file diff --git a/src/ast.rs b/src/ast.rs index 3ac5a03..f58d2f6 100644 --- a/src/ast.rs +++ b/src/ast.rs @@ -355,6 +355,7 @@ trait ArgScope<'me, 'ctx>: fmt::Debug { fn get_template_arg(&'me self, index: usize) -> Result<(&'ctx TemplateArg, &'ctx TemplateArgs)>; + #[allow(unused)] /// Get the current scope's `index`th function argument's type. fn get_function_arg(&'me self, index: usize) -> Result<&'ctx Type>; } From f2d468d18573796f86342502a85d2a46863bf0cd Mon Sep 17 00:00:00 2001 From: TheCPP Date: Wed, 22 May 2024 18:10:05 +0200 Subject: [PATCH 2/4] fix --- examples/simple.rs | 2 ++ 1 file changed, 2 insertions(+) diff --git a/examples/simple.rs b/examples/simple.rs index 72d9ae9..b557a96 100644 --- a/examples/simple.rs +++ b/examples/simple.rs @@ -1,3 +1,5 @@ +#![cfg(feature = "std")] + use cpp_demangle::Symbol; pub fn main() -> Result<(), Box> { From fb00501c4ada5a686d459ea52ab2ddd4220122a1 Mon Sep 17 00:00:00 2001 From: Cr0a3 <127748753+Toni-Graphics@users.noreply.github.com> Date: Thu, 23 May 2024 18:55:04 +0200 Subject: [PATCH 3/4] Update simple.rs --- examples/simple.rs | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/examples/simple.rs b/examples/simple.rs index b557a96..d8c3441 100644 --- a/examples/simple.rs +++ b/examples/simple.rs @@ -1,5 +1,3 @@ -#![cfg(feature = "std")] - use cpp_demangle::Symbol; pub fn main() -> Result<(), Box> { @@ -14,4 +12,4 @@ pub fn main() -> Result<(), Box> { assert_eq!(demangled, "space::foo(int, bool, char)"); Ok(()) -} \ No newline at end of file +} From 7a11eb9fd0485071c41bfa59be5431f6504962da Mon Sep 17 00:00:00 2001 From: Cr0a3 <127748753+Toni-Graphics@users.noreply.github.com> Date: Thu, 23 May 2024 18:55:36 +0200 Subject: [PATCH 4/4] Update Cargo.toml --- Cargo.toml | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/Cargo.toml b/Cargo.toml index be10b6a..f273cb5 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -52,3 +52,8 @@ fuzz = ["afl"] [profile.release] debug = true + +[[example]] +name = "simple" +path = "examples/simple.rs" +required-features = ["std"]