public override void Execute() { ReadConfig(); if (nullGuardMode == NullGuardMode.AutoDetect) { nullGuardMode = ModuleDefinition.AutoDetectMode(); } var nullGuardAttribute = ModuleDefinition.GetNullGuardAttribute(); if (nullGuardAttribute == null) { nullGuardAttribute = ModuleDefinition.Assembly.GetNullGuardAttribute(); } if (nullGuardAttribute != null) { ValidationFlags = (ValidationFlags)nullGuardAttribute.ConstructorArguments[0].Value; } LogInfo($"Mode={nullGuardMode}, ValidationFlags={ValidationFlags}"); FindReferences(); var types = GetTypesToProcess(); CheckForBadAttributes(types); ProcessAssembly(types); RemoveAttributes(types); RemoveReference(); }
public override void Execute() { ReadConfig(); if (nullGuardMode == NullGuardMode.AutoDetect) { nullGuardMode = ModuleDefinition.AutoDetectMode(); } switch (nullGuardMode) { case NullGuardMode.Explicit: nullabilityAnalyzer = new ExplicitModeAnalyzer(); break; case NullGuardMode.NullableReferenceTypes: nullabilityAnalyzer = new NullableReferenceTypesModeAnalyzer(); break; } var nullGuardAttribute = ModuleDefinition.GetNullGuardAttribute(); if (nullGuardAttribute == null) { nullGuardAttribute = ModuleDefinition.Assembly.GetNullGuardAttribute(); } if (nullGuardAttribute != null) { ValidationFlags = (ValidationFlags)nullGuardAttribute.ConstructorArguments[0].Value; } WriteInfo($"Mode={nullGuardMode}, ValidationFlags={ValidationFlags}"); FindReferences(); var types = GetTypesToProcess(); nullabilityAnalyzer.CheckForBadAttributes(types, WriteError); ProcessAssembly(types); RemoveAttributes(types); RemoveReference(); }