diff --git a/src/Generator/PassBuilder.cs b/src/Generator/PassBuilder.cs index 67a5d4aa..c6359826 100644 --- a/src/Generator/PassBuilder.cs +++ b/src/Generator/PassBuilder.cs @@ -25,29 +25,5 @@ namespace Cxxi pass.Library = Library; Passes.Add(pass); } - - #region Operation Helpers - - public void RenameWithPattern(string pattern, string replacement, RenameTargets targets) - { - AddPass(new RegexRenamePass(pattern, replacement, targets)); - } - - public void RemovePrefix(string prefix) - { - AddPass(new RegexRenamePass("^" + prefix, String.Empty)); - } - - public void RemovePrefixEnumItem(string prefix) - { - AddPass(new RegexRenamePass("^" + prefix, String.Empty, RenameTargets.EnumItem)); - } - - public void RenameDeclsCase(RenameTargets targets, RenameCasePattern pattern) - { - AddPass(new CaseRenamePass(targets, pattern)); - } - - #endregion } } diff --git a/src/Generator/Passes/RenamePass.cs b/src/Generator/Passes/RenamePass.cs index 6221fc6d..00cf76af 100644 --- a/src/Generator/Passes/RenamePass.cs +++ b/src/Generator/Passes/RenamePass.cs @@ -221,4 +221,30 @@ namespace Cxxi.Passes return sb.ToString(); } } + + public static class RenamePassExtensions + { + public static void RenameWithPattern(this PassBuilder builder, + string pattern, string replacement, RenameTargets targets) + { + builder.AddPass(new RegexRenamePass(pattern, replacement, targets)); + } + + public static void RemovePrefix(this PassBuilder builder, string prefix) + { + builder.AddPass(new RegexRenamePass("^" + prefix, String.Empty)); + } + + public static void RemovePrefixEnumItem(this PassBuilder builder, string prefix) + { + builder.AddPass(new RegexRenamePass("^" + prefix, String.Empty, + RenameTargets.EnumItem)); + } + + public static void RenameDeclsCase(this PassBuilder builder, + RenameTargets targets, RenameCasePattern pattern) + { + builder.AddPass(new CaseRenamePass(targets, pattern)); + } + } }