From 1a3e53af6836b8830f2168ac20a55eb7a37fd639 Mon Sep 17 00:00:00 2001
From: josetr <37419832+josetr@users.noreply.github.com>
Date: Sun, 13 Mar 2022 11:35:22 +0000
Subject: [PATCH] Add option to control whether CppSharp should be allowed to
rename symbols
---
src/Generator/Options.cs | 2 ++
src/Generator/Passes/RenamePass.cs | 3 +++
2 files changed, 5 insertions(+)
diff --git a/src/Generator/Options.cs b/src/Generator/Options.cs
index b7370ed4..7b6153e7 100644
--- a/src/Generator/Options.cs
+++ b/src/Generator/Options.cs
@@ -93,6 +93,8 @@ namespace CppSharp
/// true to generate class templates; otherwise, false.
///
public bool GenerateClassTemplates { get; set; }
+ public bool AllowRenaming { get; set; } = true;
+ public bool PutAllGlobalsInGlobalClass { get; set; } = false;
public bool GenerateInternalImports;
public bool GenerateSequentialLayout { get; set; } = true;
public bool UseHeaderDirectories;
diff --git a/src/Generator/Passes/RenamePass.cs b/src/Generator/Passes/RenamePass.cs
index 02f7ae94..fa01d210 100644
--- a/src/Generator/Passes/RenamePass.cs
+++ b/src/Generator/Passes/RenamePass.cs
@@ -73,6 +73,9 @@ namespace CppSharp.Passes
public bool IsRenameableDecl(Declaration decl)
{
+ if (!Options.AllowRenaming)
+ return false;
+
if (decl is Class)
return Targets.HasFlag(RenameTargets.Class);