Skip to content

Commit

Permalink
Remove usage of task extension in rename tracking (#76462)
Browse files Browse the repository at this point in the history
  • Loading branch information
CyrusNajmabadi authored Dec 17, 2024
2 parents dad234d + 3d2d26b commit f827454
Showing 1 changed file with 13 additions and 9 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -129,17 +129,21 @@ internal void CheckNewIdentifier(StateMachine stateMachine, ITextSnapshot snapsh
{
_threadingContext.ThrowIfNotOnUIThread();

_newIdentifierBindsTask = _isRenamableIdentifierTask.SafeContinueWithFromAsync(
async t => t.Result != TriggerIdentifierKind.NotRenamable &&
TriggerIdentifierKind.RenamableReference ==
await DetermineIfRenamableIdentifierAsync(
TrackingSpan.GetSpan(snapshot),
initialCheck: false).ConfigureAwait(false),
_cancellationToken,
TaskContinuationOptions.OnlyOnRanToCompletion,
TaskScheduler.Default);
_newIdentifierBindsTask = DetermineIfNewIdentifierBindsAsync(_isRenamableIdentifierTask);
_newIdentifierBindsTask.ReportNonFatalErrorAsync();

QueueUpdateToStateMachine(stateMachine, _newIdentifierBindsTask);

async Task<bool> DetermineIfNewIdentifierBindsAsync(Task<TriggerIdentifierKind> isRenamableIdentifierTask)
{
// Ensure we do this work on a BG thread.
await TaskScheduler.Default;
var isRenamableIdentifier = await isRenamableIdentifierTask.ConfigureAwait(false);
return isRenamableIdentifier != TriggerIdentifierKind.NotRenamable &&
TriggerIdentifierKind.RenamableReference == await DetermineIfRenamableIdentifierAsync(
TrackingSpan.GetSpan(snapshot),
initialCheck: false).ConfigureAwait(false);
}
}

internal bool IsDefinitelyRenamableIdentifier()
Expand Down

0 comments on commit f827454

Please sign in to comment.