Lowering\AsyncRewriter\AsyncMethodToStateMachineRewriter.cs (18)
147bodyBuilder.Add(F.Assignment(F.Local(cachedState), F.Field(F.This(), stateField)));
167var stateDone = F.Assignment(F.Field(F.This(), stateField), F.Literal(StateMachineState.FinishedState));
228F.ExpressionStatement(F.AssignmentExpression(F.Field(F.This(), stateField), F.Literal(StateMachineState.FinishedState)));
257F.Field(F.This(), _asyncMethodBuilderField),
280builder.Add(F.Assignment(F.Field(F.This(), hoistedLocal), F.NullOrDefault(hoistedLocal.Type)));
293F.Field(F.This(), _asyncMethodBuilderField),
485F.Field(F.This(), awaiterField),
519? F.Field(F.This(), awaiterField)
520: F.Convert(awaiterTemp.Type, F.Field(F.This(), awaiterField))));
523F.Assignment(F.Field(F.This(), awaiterField), F.NullOrDefault(awaiterField.Type)));
569blockBuilder.Add(F.Assignment(F.Local(thisTemp), F.This()));
584F.Field(F.This(), _asyncMethodBuilderField),
587F.This().Type),
596F.Field(F.This(), _asyncMethodBuilderField),
599F.This().Type),
628_asyncMethodBuilderMemberCollection.AwaitOnCompleted).Construct(loweredAwaiterType, F.This().Type);
636F.Field(F.This(), _asyncMethodBuilderField),
644ImmutableArray.Create<BoundExpression>(F.AssignmentExpression(F.Local(thisTemp), F.This())),
Lowering\AsyncRewriter\AsyncRewriter.AsyncIteratorRewriter.cs (8)
233BoundFieldAccess combinedTokens = F.Field(F.This(), _combinedTokensField);
338var versionInit = F.Assignment(versionLocal, F.Call(F.Field(F.This(), _promiseOfValueOrEndField), promise_get_Version));
343F.Call(F.Field(F.This(), _promiseOfValueOrEndField), promise_GetStatus, versionLocal),
346thenClause: F.Return(F.New(valueTaskT_ctorValue, F.Call(F.Field(F.This(), _promiseOfValueOrEndField), promise_GetResult, versionLocal))));
351var returnStatement = F.Return(F.New(valueTaskT_ctor, F.This(), versionLocal));
390instAssignment = F.Assignment(instLocal, F.This());
456var returnStatement = F.Return(F.New(valueTask_ctor, F.This(), F.Call(F.InstanceField(_promiseOfValueOrEndField), promise_get_Version)));
670F.Assignment(F.Field(F.This(), stateField), F.Literal(initialState)));
Lowering\IteratorRewriter\IteratorMethodToStateMachineRewriter.cs (12)
117F.Assignment(F.Local(cachedState), F.Field(F.This(), stateField)),
122F.Assignment(F.Field(F.This(), stateField), F.Literal(StateMachineState.NotStartedOrRunningState)),
147var faultBlock = F.Block(F.ExpressionStatement(F.Call(F.This(), disposeMethod)));
177F.Assignment(F.Local(stateLocal), F.Field(F.This(), stateField)),
281F.Block(F.ExpressionStatement(F.Call(F.This(), frame.handler))));
341F.Assignment(F.Field(F.This(), _current), rewrittenExpression),
342F.Assignment(F.Field(F.This(), stateField), F.Literal(stateNumber)),
346F.Assignment(F.Field(F.This(), stateField), F.Literal(_currentFinallyFrame.finalizeState)));
411F.Assignment(F.Field(F.This(), stateField), F.Literal(frame.parent.finalizeState)),
429bodyStatements.Add(F.Assignment(F.Field(F.This(), stateField), F.Literal(frame.finalizeState)));
431bodyStatements.Add(F.ExpressionStatement(F.Call(F.This(), finallyMethod)));
449bodyStatements.Add(F.ExpressionStatement(F.Call(F.This(), finallyMethod)));
Lowering\StateMachineRewriter\MethodToStateMachineRewriter.cs (9)
149BoundExpression thisProxyReplacement = thisProxy.Replacement(F.Syntax, static (frameType, F) => F.This(), F);
208var result = F.This();
441cleanup.Add(F.AssignmentExpression(F.Field(F.This(), field), F.NullOrDefault(field.Type)));
715var replacement = F.Field(F.This(), hoistedField);
745=> F.Field(F.This(), instanceIdField);
938return F.Assignment(F.Field(F.This(), stateField), F.AssignmentExpression(F.Local(cachedState), F.Literal(stateNumber)));
947var fetchThis = proxy.Replacement(F.Syntax, static (frameType, F) => F.This(), F);
983return proxy.Replacement(F.Syntax, static (frameType, F) => F.This(), F);
999return proxy.Replacement(F.Syntax, static (frameType, F) => F.This(), F);
Lowering\StateMachineRewriter\StateMachineRewriter.cs (7)
323bodyBuilder.Add(F.Assignment(leftExpression, F.This()));
442F.Assignment(F.Local(resultVariable), F.This()));
455F.IntEqual(F.Field(F.This(), stateField), F.Literal(StateMachineState.FinishedState)),
456F.IntEqual(F.Field(F.This(), initialThreadIdField), managedThreadId)),
477var rightExpression = copySrc[method.ThisParameter].Replacement(F.Syntax, static (stateMachineType, F) => F.This(), F);
497BoundExpression parameterProxy = copySrc[parameter].Replacement(F.Syntax, static (stateMachineType, F) => F.This(), F);
516F.Assignment(F.Field(F.This(), stateField), F.Literal(initialState)));
Symbols\Synthesized\Records\SynthesizedRecordBaseEquals.cs (1)
66F.This(),
Symbols\Synthesized\Records\SynthesizedRecordGetHashCode.cs (3)
73currentHashValue = MethodBodySynthesizer.GenerateGetHashCode(equalityComparer_GetHashCode, equalityComparer_get_Default, F.Property(F.This(), _equalityContract), F);
102currentHashValue = MethodBodySynthesizer.GenerateGetHashCode(equalityComparer_GetHashCode, equalityComparer_get_Default, F.Field(F.This(), f), F);
107F.Field(F.This(), f),