// Renames name, namespace, and generic parameters if needed. Does not rename members. public void prepareRename(TypeNameState typeNameState) { var typeDefinition = TypeDefinition; ITypeNameCreator nameCreator = isGlobalType() ? typeNameState.globalTypeNameCreator : typeNameState.internalTypeNameCreator; if (OldFullName != "<Module>" && !typeNameState.IsValidName(OldName)) { var newBaseType = baseType != null && baseType.typeDef.Renamed ? baseType.typeDef.NewName : null; rename(nameCreator.newName(typeDefinition, newBaseType)); } if (typeDefinition.Namespace != "" && !typeNameState.isValidNamespace(typeDefinition.Namespace)) newNamespace = typeNameState.newNamespace(typeDefinition.Namespace); prepareRenameGenericParams(genericParams, typeNameState.IsValidName); }
void renameTypeDefinitions() { Log.v("Renaming obfuscated type definitions"); typeNameState = new TypeNameState(); prepareRenameTypeDefinitions(baseTypes); typeNameState = null; fixClsTypeNames(); renameTypeDefinitions(nonNestedTypes); foreach (var module in modules) module.onTypesRenamed(); }