25 references to proxies
Microsoft.CodeAnalysis.CSharp (25)
Lowering\ClosureConversion\ClosureConversion.cs (9)
40/// variable in the corresponding scope. These are maintained in <see cref="MethodToClassRewriter.proxies"/>. 384Debug.Assert(!proxies.ContainsKey(captured)); 387proxies.Add(captured, new CapturedToFrameSymbolReplacement(hoistedField, isReusable: false)); 612if (proxies.TryGetValue(framePointer, out proxyField)) 677proxies.TryGetValue(_innermostFramePointer, out oldInnermostFrameProxy); 694proxies[_innermostFramePointer] = new CapturedToFrameSymbolReplacement(capturedFrame, isReusable: false); 722proxies[_innermostFramePointer] = oldInnermostFrameProxy; 726proxies.Remove(_innermostFramePointer); 736if (proxies.TryGetValue(symbol, out proxy))
Lowering\MethodToClassRewriter.cs (4)
369if (proxies.TryGetValue(parameterOrLocal, out CapturedSymbolReplacement? proxy)) 420if (proxies.TryGetValue(variable, out CapturedSymbolReplacement? proxy)) 488Debug.Assert(!proxies.ContainsKey(leftLocal.LocalSymbol)); 494if (NeedsProxy(leftLocal.LocalSymbol) && !proxies.ContainsKey(leftLocal.LocalSymbol))
Lowering\StateMachineRewriter\MethodToStateMachineRewriter.cs (12)
133this.proxies.Add(proxy.Key, proxy.Value); 141proxies.TryGetValue(thisParameter, out thisProxy) && 279Debug.Assert(!NeedsProxy(local) || proxies.ContainsKey(local)); 316if (!proxies.TryGetValue(local, out proxy)) 319proxies.Add(local, proxy); 345if (!proxies.TryGetValue(local, out proxy)) 520proxies.Add(local, new CapturedToExpressionSymbolReplacement(replacement, hoistedFields.ToImmutableAndFree(), isReusable: true)); 732hoistedLocalsWithDebugScopes.Add(((CapturedToStateMachineFieldReplacement)proxies[local]).HoistedField); 804if (proxies.ContainsKey(leftLocal)) 909CapturedSymbolReplacement proxy = proxies[this.OriginalMethod.ThisParameter]; 928if ((object)thisParameter == null || !proxies.TryGetValue(thisParameter, out proxy)) 960CapturedSymbolReplacement proxy = proxies[this.OriginalMethod.ThisParameter];