public RuntimeInfo(DbgInMemoryModuleServiceImpl owner, DbgAssemblyInfoProvider dbgAssemblyInfoProvider, DbgDynamicModuleProvider dbgDynamicModuleProvider, ClassLoader classLoader) { this.owner = owner ?? throw new ArgumentNullException(nameof(owner)); AssemblyInfoProvider = dbgAssemblyInfoProvider ?? throw new ArgumentNullException(nameof(dbgAssemblyInfoProvider)); DynamicModuleProvider = dbgDynamicModuleProvider; ClassLoader = classLoader; if (dbgDynamicModuleProvider != null) { dbgDynamicModuleProvider.ClassLoaded += DbgDynamicModuleProvider_ClassLoaded; } }
public ClassLoaderImpl(UIDispatcher uiDispatcher, Lazy <IDocumentTreeView> documentTreeView, Lazy <IDocumentTabService> documentTabService, Lazy <ShowModuleLoaderService> showModuleLoaderService, Lazy <IMessageBoxService> messageBoxService, DbgRuntime runtime, DbgDynamicModuleProvider dbgDynamicModuleProvider) { lockObj = new object(); this.uiDispatcher = uiDispatcher ?? throw new ArgumentNullException(nameof(uiDispatcher)); this.documentTreeView = documentTreeView ?? throw new ArgumentNullException(nameof(documentTreeView)); this.documentTabService = documentTabService ?? throw new ArgumentNullException(nameof(documentTabService)); this.showModuleLoaderService = showModuleLoaderService ?? throw new ArgumentNullException(nameof(showModuleLoaderService)); this.messageBoxService = messageBoxService ?? throw new ArgumentNullException(nameof(messageBoxService)); this.runtime = runtime ?? throw new ArgumentNullException(nameof(runtime)); this.dbgDynamicModuleProvider = dbgDynamicModuleProvider ?? throw new ArgumentNullException(nameof(dbgDynamicModuleProvider)); loadedClasses = new Dictionary <DbgModule, HashSet <uint> >(); }
public override ClassLoader Create(DbgRuntime runtime, DbgDynamicModuleProvider dbgDynamicModuleProvider) => new ClassLoaderImpl(uiDispatcher, documentTreeView, documentTabService, showModuleLoaderService, messageBoxService, runtime, dbgDynamicModuleProvider);
public abstract ClassLoader Create(DbgRuntime runtime, DbgDynamicModuleProvider dbgDynamicModuleProvider);