private void AnalyzeWhileStatement(SyntaxNodeAnalysisContext context) { var whileStatement = (WhileStatementSyntax)context.Node; FormatEmbeddedStatementOnSeparateLineRefactoring.Analyze(context, whileStatement); AddEmptyLineAfterEmbeddedStatementRefactoring.Analyze(context, whileStatement); AddBracesRefactoring.Analyze(context, whileStatement); }
private void AnalyzeSyntaxNode(SyntaxNodeAnalysisContext context) { var elseClause = (ElseClauseSyntax)context.Node; FormatEmbeddedStatementOnSeparateLineRefactoring.Analyze(context, elseClause); AddEmptyLineAfterEmbeddedStatementRefactoring.Analyze(context, elseClause); RemoveEmptyElseClauseRefactoring.Analyze(context, elseClause); MergeElseClauseWithNestedIfStatementRefactoring.Analyze(context, elseClause); }
public sealed override async Task RegisterCodeFixesAsync(CodeFixContext context) { SyntaxNode root = await context.GetSyntaxRootAsync().ConfigureAwait(false); if (!TryFindFirstAncestorOrSelf(root, context.Span, out StatementSyntax statement)) { return; } CodeAction codeAction = CodeAction.Create( "Add empty line", cancellationToken => AddEmptyLineAfterEmbeddedStatementRefactoring.RefactorAsync(context.Document, statement, cancellationToken), GetEquivalenceKey(DiagnosticIdentifiers.AddEmptyLineAfterEmbeddedStatement)); context.RegisterCodeFix(codeAction, context.Diagnostics); }
public sealed override async Task RegisterCodeFixesAsync(CodeFixContext context) { SyntaxNode root = await context.Document.GetSyntaxRootAsync(context.CancellationToken).ConfigureAwait(false); StatementSyntax statement = root .FindNode(context.Span, getInnermostNodeForTie: true)? .FirstAncestorOrSelf <StatementSyntax>(); if (statement == null) { return; } CodeAction codeAction = CodeAction.Create( "Add empty line", cancellationToken => AddEmptyLineAfterEmbeddedStatementRefactoring.RefactorAsync(context.Document, statement, cancellationToken), DiagnosticIdentifiers.AddEmptyLineAfterEmbeddedStatement + EquivalenceKeySuffix); context.RegisterCodeFix(codeAction, context.Diagnostics); }