コード例 #1
0
        private string ApplyQuickFixToFirstInspectionResult(string inputCode)
        {
            var vbe = MockVbeBuilder.BuildFromSingleStandardModule(inputCode, out var component);

            var(state, rewritingManager) = MockParser.CreateAndParseWithRewritingManager(vbe.Object);
            using (state)
            {
                var inspection        = new VariableTypeNotDeclaredInspection(state);
                var inspectionResults = inspection.GetInspectionResults(CancellationToken.None);
                var resultToFix       = inspectionResults.First();

                var refactoringAction = new ImplicitTypeToExplicitRefactoringAction(state, new ParseTreeValueFactory(), rewritingManager);
                var quickFix          = new DeclareAsExplicitTypeQuickFix(refactoringAction);

                var rewriteSession = rewritingManager.CheckOutCodePaneSession();
                quickFix.Fix(resultToFix, rewriteSession);
                rewriteSession.TryRewrite();

                return(component.CodeModule.Content());
            }
        }
コード例 #2
0
 public DeclareAsExplicitTypeQuickFix(ImplicitTypeToExplicitRefactoringAction refactoringAction)
     : base(typeof(VariableTypeNotDeclaredInspection), typeof(ImplicitlyTypedConstInspection))
 {
     _refactoring = refactoringAction;
 }