Lowering\AsyncRewriter\AsyncMethodToStateMachineRewriter.cs (18)
145bodyBuilder.Add(F.Assignment(F.Local(cachedState), F.Field(F.This(), stateField)));
165var stateDone = F.Assignment(F.Field(F.This(), stateField), F.Literal(StateMachineState.FinishedState));
219F.Field(F.This(), _asyncMethodBuilderField),
241F.ExpressionStatement(F.AssignmentExpression(F.Field(F.This(), stateField), F.Literal(StateMachineState.FinishedState)));
277builder.Add(F.Assignment(F.Field(F.This(), hoistedLocal), F.NullOrDefault(hoistedLocal.Type)));
290F.Field(F.This(), _asyncMethodBuilderField),
482F.Field(F.This(), awaiterField),
516? F.Field(F.This(), awaiterField)
517: F.Convert(awaiterTemp.Type, F.Field(F.This(), awaiterField))));
520F.Assignment(F.Field(F.This(), awaiterField), F.NullOrDefault(awaiterField.Type)));
566blockBuilder.Add(F.Assignment(F.Local(thisTemp), F.This()));
581F.Field(F.This(), _asyncMethodBuilderField),
584F.This().Type),
593F.Field(F.This(), _asyncMethodBuilderField),
596F.This().Type),
625_asyncMethodBuilderMemberCollection.AwaitOnCompleted).Construct(loweredAwaiterType, F.This().Type);
633F.Field(F.This(), _asyncMethodBuilderField),
641ImmutableArray.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)
116F.Assignment(F.Local(cachedState), F.Field(F.This(), stateField)),
121F.Assignment(F.Field(F.This(), stateField), F.Literal(StateMachineState.NotStartedOrRunningState)),
146var faultBlock = F.Block(F.ExpressionStatement(F.Call(F.This(), disposeMethod)));
172F.Assignment(F.Local(stateLocal), F.Field(F.This(), stateField)),
275F.Block(F.ExpressionStatement(F.Call(F.This(), frame.handler))));
335F.Assignment(F.Field(F.This(), _current), rewrittenExpression),
336F.Assignment(F.Field(F.This(), stateField), F.Literal(stateNumber)),
340F.Assignment(F.Field(F.This(), stateField), F.Literal(_currentFinallyFrame.finalizeState)));
405F.Assignment(F.Field(F.This(), stateField), F.Literal(frame.parent.finalizeState)),
423bodyStatements.Add(F.Assignment(F.Field(F.This(), stateField), F.Literal(frame.finalizeState)));
425bodyStatements.Add(F.ExpressionStatement(F.Call(F.This(), finallyMethod)));
443bodyStatements.Add(F.ExpressionStatement(F.Call(F.This(), finallyMethod)));
Lowering\StateMachineRewriter\MethodToStateMachineRewriter.cs (9)
144BoundExpression thisProxyReplacement = thisProxy.Replacement(F.Syntax, static (frameType, F) => F.This(), F);
203var result = F.This();
429cleanup.Add(F.AssignmentExpression(F.Field(F.This(), field), F.NullOrDefault(field.Type)));
697var replacement = F.Field(F.This(), hoistedField);
727=> F.Field(F.This(), instanceIdField);
920return F.Assignment(F.Field(F.This(), stateField), F.AssignmentExpression(F.Local(cachedState), F.Literal(stateNumber)));
929var fetchThis = proxy.Replacement(F.Syntax, static (frameType, F) => F.This(), F);
965return proxy.Replacement(F.Syntax, static (frameType, F) => F.This(), F);
981return proxy.Replacement(F.Syntax, static (frameType, F) => F.This(), F);
Lowering\StateMachineRewriter\StateMachineRewriter.cs (7)
319bodyBuilder.Add(F.Assignment(leftExpression, F.This()));
438F.Assignment(F.Local(resultVariable), F.This()));
451F.IntEqual(F.Field(F.This(), stateField), F.Literal(StateMachineState.FinishedState)),
452F.IntEqual(F.Field(F.This(), initialThreadIdField), managedThreadId)),
473var rightExpression = copySrc[method.ThisParameter].Replacement(F.Syntax, static (stateMachineType, F) => F.This(), F);
493BoundExpression parameterProxy = copySrc[parameter].Replacement(F.Syntax, static (stateMachineType, F) => F.This(), F);
512F.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),