public TypeProvider(ModuleDefinition module, IMetadataScope messagePackScope, IReportHook reportHook) { this.Module = module; this.messagePackScope = messagePackScope; this.reportHook = reportHook; Importer = new ModuleImporter(module); }
public CodeGenerator(Action <string> logger, IReportHook reportHook) { this.logger = logger; this.reportHook = reportHook; var assemblyResolver = new DefaultAssemblyResolver(); this.readerParam = new ReaderParameters { AssemblyResolver = assemblyResolver, ReadWrite = true, }; this.doNotWriteReaderParam = new ReaderParameters() { AssemblyResolver = assemblyResolver, ReadWrite = false, }; }
public static AssemblyNameReference Inject(ModuleDefinition module, AssemblyNameReference name, IReportHook reportHook) { var version = name.Version; foreach (var nameReference in module.AssemblyReferences) { if (Predicate(name, nameReference, version)) { return(nameReference); } } reportHook.ImportNotPreviouslyReferencedAssemblyNameReference(name.Name, version.Major, version.Minor, version.Build, version.Revision, name.Culture, name.PublicKeyToken); module.AssemblyReferences.Add(name); return(name); }