11 writes to CurrentSymbol
Microsoft.CodeAnalysis.CSharp (11)
FlowAnalysis\AbstractFlowPass.cs (1)
215CurrentSymbol = symbol;
FlowAnalysis\AbstractFlowPass_LocalFunctions.cs (2)
69this.CurrentSymbol = localFuncSymbol; 151this.CurrentSymbol = oldSymbol;
FlowAnalysis\DefiniteAssignment.cs (6)
203this.CurrentSymbol = member; 227this.CurrentSymbol = member; 345CurrentSymbol = primaryConstructor; 353CurrentSymbol = save; 2261this.CurrentSymbol = node.Symbol; 2300this.CurrentSymbol = oldSymbol;
FlowAnalysis\NullableWalker.cs (2)
3077this.CurrentSymbol = lambdaOrFunctionSymbol; 3144this.CurrentSymbol = oldCurrentSymbol;
30 references to CurrentSymbol
Microsoft.CodeAnalysis.CSharp (30)
FlowAnalysis\AbstractFlowPass_LocalFunctions.cs (1)
67var oldSymbol = this.CurrentSymbol;
FlowAnalysis\DefiniteAssignment.cs (18)
103&& CurrentSymbol is MethodSymbol { MethodKind: MethodKind.Constructor, ContainingType.TypeKind: TypeKind.Struct }; 344var save = CurrentSymbol; 402if (CurrentSymbol is MethodSymbol currentMethod && currentMethod.IsAsync && !currentMethod.IsImplicitlyDeclared) 409var diagnosticLocation = CurrentSymbol is LambdaSymbol lambda 411: CurrentSymbol.Locations.FirstOrNone(); 452if (!_requireOutParamsAssigned && ReferenceEquals(topLevelMethod, CurrentSymbol)) 688if (CurrentSymbol is SourceMethodSymbol sourceMethod && 1060if (Binder.AccessingAutoPropertyFromConstructor(propAccess, this.CurrentSymbol)) 1214Debug.Assert(CurrentSymbol is MethodSymbol { MethodKind: MethodKind.Constructor, ContainingType.TypeKind: TypeKind.Struct }); 1261if (CurrentSymbol is not MethodSymbol { MethodKind: MethodKind.Constructor, ContainingType.TypeKind: TypeKind.Struct }) 1267var thisSlot = GetOrCreateSlot(CurrentSymbol.EnclosingThisSymbol()); 1369if (Binder.AccessingAutoPropertyFromConstructor(propertyAccess, this.CurrentSymbol)) 1685Symbol current = CurrentSymbol; 1689if ((object)current != CurrentSymbol && current is MethodSymbol method) 1753if (parameter.RefKind == RefKind.Out && !(this.CurrentSymbol is MethodSymbol currentMethod && currentMethod.IsAsync)) // out parameters not allowed in async 2206if (localSymbol.IsFixed && this.CurrentSymbol is MethodSymbol currentMethod && 2260var oldSymbol = this.CurrentSymbol; 2556if (Binder.AccessingAutoPropertyFromConstructor(node, this.CurrentSymbol))
FlowAnalysis\DefiniteAssignment.LocalFunctions.cs (2)
95var localFunc = GetNearestLocalFunctionOpt(CurrentSymbol); 152var nearestLocalFunc = GetNearestLocalFunctionOpt(CurrentSymbol);
FlowAnalysis\NullableWalker.cs (8)
1262else if (CurrentSymbol is MethodSymbol { IsAsync: false }) 1274if (CurrentSymbol is MethodSymbol method && 2697if (!(CurrentSymbol is MethodSymbol methodSymbol)) 2863if (CurrentSymbol is MethodSymbol method) 2897var method = CurrentSymbol as MethodSymbol; 3076var oldCurrentSymbol = this.CurrentSymbol; 4069placeholder = new PlaceholderLocal(CurrentSymbol, identifier, type); 11078var method = (MethodSymbol)CurrentSymbol;
FlowAnalysis\ReadWriteWalker.cs (1)
78Symbol current = CurrentSymbol;