11 writes to CurrentSymbol
Microsoft.CodeAnalysis.CSharp (11)
FlowAnalysis\AbstractFlowPass.cs (1)
214CurrentSymbol = symbol;
FlowAnalysis\AbstractFlowPass_LocalFunctions.cs (2)
74this.CurrentSymbol = localFuncSymbol; 151this.CurrentSymbol = oldSymbol;
FlowAnalysis\DefiniteAssignment.cs (6)
203this.CurrentSymbol = member; 227this.CurrentSymbol = member; 345CurrentSymbol = primaryConstructor; 353CurrentSymbol = save; 2438this.CurrentSymbol = node.Symbol; 2477this.CurrentSymbol = oldSymbol;
FlowAnalysis\NullableWalker.cs (2)
3400this.CurrentSymbol = lambdaOrFunctionSymbol; 3488this.CurrentSymbol = oldCurrentSymbol;
30 references to CurrentSymbol
Microsoft.CodeAnalysis.CSharp (30)
FlowAnalysis\AbstractFlowPass_LocalFunctions.cs (1)
72var oldSymbol = this.CurrentSymbol;
FlowAnalysis\DefiniteAssignment.cs (18)
103&& CurrentSymbol is MethodSymbol { MethodKind: MethodKind.Constructor, ContainingType.TypeKind: TypeKind.Struct }; 344var save = CurrentSymbol; 410if (CurrentSymbol is MethodSymbol currentMethod && currentMethod.IsAsync && !currentMethod.IsImplicitlyDeclared) 417var diagnosticLocation = CurrentSymbol is LambdaSymbol lambda 419: CurrentSymbol.GetFirstLocationOrNone(); 460if (!_requireOutParamsAssigned && ReferenceEquals(topLevelMethod, CurrentSymbol)) 710if (CurrentSymbol is SourceMethodSymbol sourceMethod && 1105if (Binder.AccessingAutoPropertyFromConstructor(propAccess, this.CurrentSymbol)) 1259Debug.Assert(CurrentSymbol is MethodSymbol { MethodKind: MethodKind.Constructor, ContainingType.TypeKind: TypeKind.Struct }); 1312if (CurrentSymbol is not MethodSymbol { MethodKind: MethodKind.Constructor, ContainingType.TypeKind: TypeKind.Struct }) 1318var thisSlot = GetOrCreateSlot(CurrentSymbol.EnclosingThisSymbol()); 1437if (Binder.AccessingAutoPropertyFromConstructor(propertyAccess, this.CurrentSymbol)) 1806Symbol current = CurrentSymbol; 1810if ((object)current != CurrentSymbol && current is MethodSymbol method) 1892if (parameter.RefKind == RefKind.Out && !(this.CurrentSymbol is MethodSymbol currentMethod && currentMethod.IsAsync)) // out parameters not allowed in async 2383if (localSymbol.IsFixed && this.CurrentSymbol is MethodSymbol currentMethod && 2437var oldSymbol = this.CurrentSymbol; 2737if (Binder.AccessingAutoPropertyFromConstructor(node, this.CurrentSymbol))
FlowAnalysis\DefiniteAssignment.LocalFunctions.cs (2)
95var localFunc = GetNearestLocalFunctionOpt(CurrentSymbol); 152var nearestLocalFunc = GetNearestLocalFunctionOpt(CurrentSymbol);
FlowAnalysis\NullableWalker.cs (8)
1397else if (CurrentSymbol is MethodSymbol { IsAsync: false }) 1409if (CurrentSymbol is MethodSymbol method && 2935if (!(CurrentSymbol is MethodSymbol methodSymbol)) 3098if (CurrentSymbol is MethodSymbol method) 3133var method = CurrentSymbol as MethodSymbol; 3399var oldCurrentSymbol = this.CurrentSymbol; 4692placeholder = new PlaceholderLocal(CurrentSymbol, identifier, type); 12790var method = (MethodSymbol)CurrentSymbol;
FlowAnalysis\ReadWriteWalker.cs (1)
78Symbol current = CurrentSymbol;