支持rename property和event
parent
53681bd14a
commit
bb9d784090
|
@ -17,6 +17,8 @@ namespace Obfuz.Rename
|
|||
|
||||
string GetNewName(MethodDef methodDef, string originalName);
|
||||
|
||||
string GetNewName(ParamDef param, string originalName);
|
||||
|
||||
string GetNewName(FieldDef fieldDef, string originalName);
|
||||
|
||||
string GetNewName(PropertyDef propertyDef, string originalName);
|
||||
|
@ -51,6 +53,11 @@ namespace Obfuz.Rename
|
|||
return GetDefaultNewName(originalName);
|
||||
}
|
||||
|
||||
public string GetNewName(ParamDef param, string originalName)
|
||||
{
|
||||
return GetDefaultNewName(originalName);
|
||||
}
|
||||
|
||||
public string GetNewName(FieldDef fieldDef, string originalName)
|
||||
{
|
||||
return GetDefaultNewName(originalName);
|
||||
|
|
|
@ -14,11 +14,13 @@ namespace Obfuz
|
|||
private readonly ObfuscatorContext _ctx;
|
||||
|
||||
private readonly IRenamePolicy _renamePolicy;
|
||||
private readonly INameMaker _nameMaker;
|
||||
|
||||
public SymbolRename(ObfuscatorContext ctx)
|
||||
{
|
||||
_ctx = ctx;
|
||||
_renamePolicy = new RenamePolicy();
|
||||
_renamePolicy = ctx.renamePolicy;
|
||||
_nameMaker = ctx.nameMaker;
|
||||
}
|
||||
|
||||
public void Process()
|
||||
|
@ -48,11 +50,14 @@ namespace Obfuz
|
|||
{
|
||||
Rename(method);
|
||||
foreach (Parameter param in method.Parameters)
|
||||
{
|
||||
if (param.ParamDef != null)
|
||||
{
|
||||
Rename(param.ParamDef);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
foreach (EventDef eventDef in type.Events)
|
||||
{
|
||||
if (_renamePolicy.NeedRename(eventDef))
|
||||
|
@ -88,7 +93,7 @@ namespace Obfuz
|
|||
private void Rename(ModuleDefMD mod)
|
||||
{
|
||||
string oldName = MetaUtil.GetModuleNameWithoutExt(mod.Name);
|
||||
string newName = _ctx.nameMaker.GetNewName(mod, oldName);
|
||||
string newName = _nameMaker.GetNewName(mod, oldName);
|
||||
mod.Name = $"{newName}.dll";
|
||||
Debug.Log($"rename module. oldName:{oldName} newName:{newName}");
|
||||
foreach (ObfuzAssemblyInfo ass in GetReferenceMeAssemblies(mod))
|
||||
|
@ -116,12 +121,12 @@ namespace Obfuz
|
|||
}
|
||||
else
|
||||
{
|
||||
newNamespace = _ctx.nameMaker.GetNewNamespace(type, oldNamespace);
|
||||
newNamespace = _nameMaker.GetNewNamespace(type, oldNamespace);
|
||||
type.Namespace = newNamespace;
|
||||
}
|
||||
|
||||
string oldName = type.Name;
|
||||
string newName = _ctx.nameMaker.GetNewName(type, oldName);
|
||||
string newName = _nameMaker.GetNewName(type, oldName);
|
||||
type.Name = newName;
|
||||
string newFullName = type.FullName;
|
||||
Debug.Log($"rename typedef. assembly:{type.Module.Name} oldName:{oldFullName} => newName:{newFullName}");
|
||||
|
@ -151,7 +156,7 @@ namespace Obfuz
|
|||
private void Rename(FieldDef field)
|
||||
{
|
||||
string oldName = field.Name;
|
||||
string newName = _ctx.nameMaker.GetNewName(field, oldName);
|
||||
string newName = _nameMaker.GetNewName(field, oldName);
|
||||
foreach (ObfuzAssemblyInfo ass in GetReferenceMeAssemblies(field.DeclaringType.Module))
|
||||
{
|
||||
foreach (MemberRef memberRef in ass.module.GetMemberRefs())
|
||||
|
@ -211,16 +216,17 @@ namespace Obfuz
|
|||
|
||||
private void Rename(ParamDef param)
|
||||
{
|
||||
|
||||
param.Name = _nameMaker.GetNewName(param, param.Name);
|
||||
}
|
||||
|
||||
private void Rename(EventDef eventDef)
|
||||
{
|
||||
|
||||
eventDef.Name = _nameMaker.GetNewName(eventDef, eventDef.Name);
|
||||
}
|
||||
|
||||
private void Rename(PropertyDef property)
|
||||
{
|
||||
property.Name = _nameMaker.GetNewName(property, property.Name);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue