提交 6ba5d167 编写于 作者: C Cyrus Najmabadi

simplify

上级 6bf803e6
......@@ -53,8 +53,8 @@ protected override async Task<Document> GetChangedDocumentAsync(CancellationToke
var thisConstructorArguments = factory.CreateArguments(
_state.Parameters.Take(_state.DelegatedConstructor.Parameters.Length).ToImmutableArray());
var nullCheckStatements = ArrayBuilder<SyntaxNode>.GetInstance();
var assignStatements = ArrayBuilder<SyntaxNode>.GetInstance();
using var _1 = ArrayBuilder<SyntaxNode>.GetInstance(out var nullCheckStatements);
using var _2 = ArrayBuilder<SyntaxNode>.GetInstance(out var assignStatements);
var options = await _document.GetOptionsAsync(cancellationToken).ConfigureAwait(false);
var useThrowExpressions = _service.PrefersThrowExpression(options);
......@@ -84,7 +84,7 @@ protected override async Task<Document> GetChangedDocumentAsync(CancellationToke
? syntaxTree.GetLocation(_state.TextSpan)
: null;
var statements = nullCheckStatements.ToImmutableAndFree().Concat(assignStatements.ToImmutableAndFree());
var statements = nullCheckStatements.ToImmutable().Concat(assignStatements.ToImmutable());
var result = await codeGenerationService.AddMethodAsync(
_document.Project.Solution,
_state.ContainingType,
......
......@@ -109,7 +109,7 @@ private async Task HandleNonSelectionAsync(CodeRefactoringContext context)
return;
}
var pickMemberOptions = ArrayBuilder<PickMembersOption>.GetInstance();
using var _ = ArrayBuilder<PickMembersOption>.GetInstance(out var pickMemberOptions);
var canAddNullCheck = viableMembers.Any(
m => m.GetSymbolType().CanAddNullCheck());
......@@ -127,7 +127,7 @@ private async Task HandleNonSelectionAsync(CodeRefactoringContext context)
context.RegisterRefactoring(
new GenerateConstructorWithDialogCodeAction(
this, document, textSpan, containingType, viableMembers,
pickMemberOptions.ToImmutableAndFree()),
pickMemberOptions.ToImmutable()),
typeDeclaration.Span);
}
......@@ -152,15 +152,13 @@ private async Task HandleNonSelectionAsync(CodeRefactoringContext context)
private ImmutableArray<CodeAction> GetCodeActions(Document document, State state, bool addNullChecks)
{
var result = ArrayBuilder<CodeAction>.GetInstance();
using var _ = ArrayBuilder<CodeAction>.GetInstance(out var result);
result.Add(new FieldDelegatingCodeAction(this, document, state, addNullChecks));
if (state.DelegatedConstructor != null)
{
result.Add(new ConstructorDelegatingCodeAction(this, document, state, addNullChecks));
}
return result.ToImmutableAndFree();
return result.ToImmutable();
}
private static async Task<Document> AddNavigationAnnotationAsync(Document document, CancellationToken cancellationToken)
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册