Ejemplo n.º 1
0
 public override void Initialize(AnalysisContext context)
 {
     context.EnableConcurrentExecution();
     context.ConfigureGeneratedCodeAnalysis(GeneratedCodeAnalysisFlags.None);
     context.RegisterCompilationStartAction(context =>
     {
         if (context.Compilation.TryGetOrCreateTypeByMetadataName(
                 WellKnownTypeNames.SystemRuntimeCompilerServicesDisableRuntimeMarshallingAttribute,
                 out INamedTypeSymbol? disableRuntimeMarshallingAttribute) &&
             context.Compilation.Assembly.HasAttribute(disableRuntimeMarshallingAttribute))
         {
             var perCompilationAnalyzer = new PerCompilationAnalyzer(context.Compilation);
             perCompilationAnalyzer.RegisterActions(context);
         }
     });
 }