ReflectionDisassembler CreateReflectionDisassembler(IDecompilerOutput output, DecompilationContext ctx, ModuleDef ownerModule) { var disOpts = new DisassemblerOptions(langSettings.Settings.SettingsVersion, ctx.CancellationToken, ownerModule); if (langSettings.Settings.ShowILComments) { disOpts.GetOpCodeDocumentation = ILLanguageHelper.GetOpCodeDocumentation; } var sb = new StringBuilder(); if (langSettings.Settings.ShowXmlDocumentation) { disOpts.GetXmlDocComments = a => GetXmlDocComments(a, sb); } disOpts.CreateInstructionBytesReader = m => InstructionBytesReader.Create(m, ctx.IsBodyModified != null && ctx.IsBodyModified(m)); disOpts.ShowTokenAndRvaComments = langSettings.Settings.ShowTokenAndRvaComments; disOpts.ShowILBytes = langSettings.Settings.ShowILBytes; disOpts.SortMembers = langSettings.Settings.SortMembers; disOpts.ShowPdbInfo = langSettings.Settings.ShowPdbInfo; disOpts.MaxStringLength = langSettings.Settings.MaxStringLength; return(new ReflectionDisassembler(output, detectControlStructure, disOpts)); }
ReflectionDisassembler CreateReflectionDisassembler(IDecompilerOutput output, DecompilationContext ctx, ModuleDef ownerModule) { var disOpts = new DisassemblerOptions(ctx.CancellationToken, ownerModule); if (langSettings.Settings.ShowILComments) disOpts.GetOpCodeDocumentation = ILLanguageHelper.GetOpCodeDocumentation; var sb = new StringBuilder(); if (langSettings.Settings.ShowXmlDocumentation) disOpts.GetXmlDocComments = a => GetXmlDocComments(a, sb); disOpts.CreateInstructionBytesReader = m => InstructionBytesReader.Create(m, ctx.IsBodyModified != null && ctx.IsBodyModified(m)); disOpts.ShowTokenAndRvaComments = langSettings.Settings.ShowTokenAndRvaComments; disOpts.ShowILBytes = langSettings.Settings.ShowILBytes; disOpts.SortMembers = langSettings.Settings.SortMembers; return new ReflectionDisassembler(output, detectControlStructure, disOpts); }