예제 #1
0
 /// <summary>
 /// Traverse the symbol table and call Module.AddCompilerGeneratedDefinition for each
 /// synthesized explicit implementation stub that has been generated (e.g. when the real
 /// implementation doesn't have the appropriate custom modifiers).
 /// </summary>
 public static void CompileSynthesizedMethodMetadata(
     CSharpCompilation compilation,
     PEModuleBuilder moduleBeingBuilt,
     CancellationToken cancellationToken)
 {
     using (Logger.LogBlock(FunctionId.CSharp_Compiler_CompileSynthesizedMethodMetadata, message: compilation.AssemblyName, cancellationToken: cancellationToken))
     {
         var synthesizedMethodCompiler = new SynthesizedMethodMetadataCompiler(moduleBeingBuilt, cancellationToken);
         synthesizedMethodCompiler.Visit(compilation.SourceModule.GlobalNamespace);
     }
 }
예제 #2
0
 /// <summary>
 /// Traverse the symbol table and call Module.AddCompilerGeneratedDefinition for each
 /// synthesized explicit implementation stub that has been generated (e.g. when the real
 /// implementation doesn't have the appropriate custom modifiers).
 /// </summary>
 public static void CompileSynthesizedMethodMetadata(
     CSharpCompilation compilation,
     PEModuleBuilder moduleBeingBuilt,
     CancellationToken cancellationToken)
 {
     using (Logger.LogBlock(FunctionId.CSharp_Compiler_CompileSynthesizedMethodMetadata, message: compilation.AssemblyName, cancellationToken: cancellationToken))
     {
         var synthesizedMethodCompiler = new SynthesizedMethodMetadataCompiler(moduleBeingBuilt, cancellationToken);
         synthesizedMethodCompiler.Visit(compilation.SourceModule.GlobalNamespace);
     }
 }