25 references to proxies
Microsoft.CodeAnalysis.CSharp (25)
Lowering\ClosureConversion\ClosureConversion.cs (9)
41/// variable in the corresponding scope. These are maintained in <see cref="MethodToClassRewriter.proxies"/>. 390Debug.Assert(!proxies.ContainsKey(captured)); 393proxies.Add(captured, new CapturedToFrameSymbolReplacement(hoistedField, isReusable: false)); 620if (proxies.TryGetValue(framePointer, out proxyField)) 688proxies.TryGetValue(_innermostFramePointer, out oldInnermostFrameProxy); 705proxies[_innermostFramePointer] = new CapturedToFrameSymbolReplacement(capturedFrame, isReusable: false); 733proxies[_innermostFramePointer] = oldInnermostFrameProxy; 737proxies.Remove(_innermostFramePointer); 747if (proxies.TryGetValue(symbol, out proxy))
Lowering\MethodToClassRewriter.cs (4)
374if (proxies.TryGetValue(parameterOrLocal, out CapturedSymbolReplacement? proxy)) 429if (proxies.TryGetValue(variable, out CapturedSymbolReplacement? proxy)) 497Debug.Assert(!proxies.ContainsKey(leftLocal.LocalSymbol)); 503if (NeedsProxy(leftLocal.LocalSymbol) && !proxies.ContainsKey(leftLocal.LocalSymbol))
Lowering\StateMachineRewriter\MethodToStateMachineRewriter.cs (12)
132this.proxies.Add(proxy.Key, proxy.Value); 140proxies.TryGetValue(thisParameter, out thisProxy) && 278Debug.Assert(!NeedsProxy(local) || proxies.ContainsKey(local)); 316if (!proxies.TryGetValue(local, out proxy)) 319proxies.Add(local, proxy); 345if (!proxies.TryGetValue(local, out proxy)) 535proxies.Add(local, new CapturedToExpressionSymbolReplacement(replacement, hoistedFields.ToImmutableAndFree(), isReusable: true)); 749hoistedLocalsWithDebugScopes.Add(((CapturedToStateMachineFieldReplacement)proxies[local]).HoistedField); 821if (proxies.ContainsKey(leftLocal)) 927CapturedSymbolReplacement proxy = proxies[this.OriginalMethod.ThisParameter]; 946if ((object)thisParameter == null || !proxies.TryGetValue(thisParameter, out proxy)) 978CapturedSymbolReplacement proxy = proxies[this.OriginalMethod.ThisParameter];