internal void Analyze(NameService service, ConfuserContext context, ProtectionParameters parameters, IDnlibDef def, bool runAnalyzer) { if (def is TypeDef) { Analyze(service, context, parameters, (TypeDef)def); } else if (def is MethodDef) { Analyze(service, context, parameters, (MethodDef)def); } else if (def is FieldDef) { Analyze(service, context, parameters, (FieldDef)def); } else if (def is PropertyDef) { Analyze(service, context, parameters, (PropertyDef)def); } else if (def is EventDef) { Analyze(service, context, parameters, (EventDef)def); } else if (def is ModuleDef) { var pass = parameters.GetParameter <string>(context, def, "password", null); if (pass != null) { service.reversibleRenamer = new ReversibleRenamer(pass); } var idOffset = parameters.GetParameter <uint>(context, def, "idOffset", 0); if (idOffset != 0) { service.SetNameId(idOffset); } service.SetCanRename(def, false); } if (!runAnalyzer || parameters.GetParameter(context, def, "forceRen", false)) { return; } foreach (IRenamer renamer in service.Renamers) { renamer.Analyze(context, service, parameters, def); } }