public static async Task ComputeRefactoringsAsync(RefactoringContext context, ReturnStatementSyntax returnStatement) { ExpressionSyntax expression = returnStatement.Expression; if (expression != null) { if (context.IsAnyRefactoringEnabled( RefactoringIdentifiers.AddBooleanComparison, RefactoringIdentifiers.ChangeMemberTypeAccordingToReturnExpression, RefactoringIdentifiers.AddCastExpression, RefactoringIdentifiers.CallToMethod)) { await ReturnExpressionRefactoring.ComputeRefactoringsAsync(context, expression).ConfigureAwait(false); } if (context.Span.IsBetweenSpans(returnStatement)) { if (context.IsRefactoringEnabled(RefactoringIdentifiers.ReplaceStatementWithIfStatement)) { var refactoring = new ReplaceReturnStatementWithIfStatementRefactoring(); await refactoring.ComputeRefactoringAsync(context, returnStatement).ConfigureAwait(false); } if (context.IsRefactoringEnabled(RefactoringIdentifiers.WrapInElseClause)) { WrapInElseClauseRefactoring.ComputeRefactoring(context, returnStatement); } } } else if (context.IsRefactoringEnabled(RefactoringIdentifiers.AddDefaultValueToReturnStatement)) { await AddDefaultValueToReturnStatementRefactoring.ComputeRefactoringsAsync(context, returnStatement).ConfigureAwait(false); } }
public static async Task ComputeRefactoringsAsync(RefactoringContext context, ReturnStatementSyntax returnStatement) { if (context.SupportsSemanticModel) { if (returnStatement.Expression != null) { if (context.IsAnyRefactoringEnabled( RefactoringIdentifiers.AddBooleanComparison, RefactoringIdentifiers.ChangeMemberTypeAccordingToReturnExpression, RefactoringIdentifiers.AddCastExpression, RefactoringIdentifiers.CallToMethod)) { await ReturnExpressionRefactoring.ComputeRefactoringsAsync(context, returnStatement.Expression).ConfigureAwait(false); } if (context.IsRefactoringEnabled(RefactoringIdentifiers.CreateConditionFromBooleanExpression)) { await CreateConditionFromBooleanExpressionRefactoring.ComputeRefactoringAsync(context, returnStatement.Expression).ConfigureAwait(false); } } else if (context.IsRefactoringEnabled(RefactoringIdentifiers.AddDefaultValueToReturnStatement)) { await AddDefaultValueToReturnStatementRefactoring.ComputeRefactoringsAsync(context, returnStatement).ConfigureAwait(false); } } }
public static async Task ComputeRefactoringsAsync(RefactoringContext context, ReturnStatementSyntax returnStatement) { ExpressionSyntax expression = returnStatement.Expression; if (expression != null) { if (context.IsAnyRefactoringEnabled( RefactoringIdentifiers.ChangeMemberTypeAccordingToReturnExpression, RefactoringIdentifiers.AddCastExpression, RefactoringIdentifiers.CallToMethod)) { await ReturnExpressionRefactoring.ComputeRefactoringsAsync(context, expression).ConfigureAwait(false); } if (context.IsRefactoringEnabled(RefactoringIdentifiers.ReplaceStatementWithIfElse) && (context.Span.IsEmptyAndContainedInSpan(returnStatement.ReturnKeyword) || context.Span.IsBetweenSpans(returnStatement))) { await ReplaceStatementWithIfStatementRefactoring.ReplaceReturnWithIfElse.ComputeRefactoringAsync(context, returnStatement).ConfigureAwait(false); } } else if (context.IsRefactoringEnabled(RefactoringIdentifiers.AddDefaultValueToReturnStatement)) { await AddDefaultValueToReturnStatementRefactoring.ComputeRefactoringsAsync(context, returnStatement).ConfigureAwait(false); } }