public async Task <IDebugInfoProvider?> LoadDebugInfo(string fileName) { this.PdbFileName = fileName; var assembly = await GetPEFileAsync().ConfigureAwait(false); debugInfoProvider = await Task.Run(() => LoadDebugInfo(assembly)); return(debugInfoProvider); }
LoadResult LoadAssembly(Stream stream, PEStreamOptions streamOptions, bool applyWinRTProjections) { MetadataReaderOptions options = applyWinRTProjections ? MetadataReaderOptions.ApplyWindowsRuntimeProjections : MetadataReaderOptions.None; PEFile module = new PEFile(fileName, stream, streamOptions, metadataOptions: options); debugInfoProvider = LoadDebugInfo(module); lock (loadedAssemblies) { loadedAssemblies.Add(module, this); } return(new LoadResult(module)); }
LoadResult LoadAssembly(Stream stream, PEStreamOptions streamOptions) { MetadataReaderOptions options; if (DecompilerSettingsPanel.CurrentDecompilerSettings.ApplyWindowsRuntimeProjections) { options = MetadataReaderOptions.ApplyWindowsRuntimeProjections; } else { options = MetadataReaderOptions.None; } PEFile module = new PEFile(fileName, stream, streamOptions, metadataOptions: options); debugInfoProvider = LoadDebugInfo(module); lock (loadedAssemblies) { loadedAssemblies.Add(module, this); } return(new LoadResult(module)); }
public ILTransformContext(ILFunction function, IDecompilerTypeSystem typeSystem, IDebugInfoProvider?debugInfo, DecompilerSettings?settings = null) { this.Function = function ?? throw new ArgumentNullException(nameof(function)); this.TypeSystem = typeSystem ?? throw new ArgumentNullException(nameof(typeSystem)); this.Settings = settings ?? new DecompilerSettings(); this.DebugInfo = debugInfo; Stepper = new Stepper(); }