4 instantiations of NullableWalker
Microsoft.CodeAnalysis.CSharp (4)
FlowAnalysis\NullableWalker.cs (4)
1647var walker = new NullableWalker( 1768var walker = new NullableWalker( 1820var walker = new NullableWalker(compilation, 4851var walker = new NullableWalker(binder.Compilation,
77 references to NullableWalker
Microsoft.CodeAnalysis.CSharp (77)
Binder\Semantics\BestTypeInferrer.cs (3)
72Debug.Assert(!NullableWalker.IsTargetTypedExpression(expr)); 137Debug.Assert(!NullableWalker.IsTargetTypedExpression(expr1)); 152Debug.Assert(!NullableWalker.IsTargetTypedExpression(expr2));
BoundTree\UnboundLambda.cs (6)
117public TypeWithAnnotations GetInferredReturnType(ConversionsBase? conversions, NullableWalker.VariableState? nullableState, ref CompoundUseSiteInfo<AssemblySymbol> useSiteInfo, out bool inferredFromFunctionType) 148NullableWalker.Analyze(compilation, 285bestResultType = NullableWalker.BestTypeForLambdaReturns(returns, binder, node, (Conversions)conversions, out inferredFromFunctionType); 388private readonly NullableWalker.VariableState? _nullableState; 420private UnboundLambda(SyntaxNode syntax, UnboundLambdaState state, FunctionTypeSymbol? functionType, bool withDependencies, NullableWalker.VariableState? nullableState, bool hasErrors) : 426internal UnboundLambda WithNullableState(NullableWalker.VariableState nullableState)
Compilation\AttributeSemanticModel.cs (3)
107out NullableWalker.SnapshotManager? snapshotManager, 110return NullableWalker.AnalyzeAndRewrite(Compilation, symbol: null, boundRoot, binder, initialState: null, diagnostics, createSnapshots, out snapshotManager, ref remappedSymbols); 115NullableWalker.AnalyzeWithoutRewrite(Compilation, symbol: null, boundRoot, binder, diagnostics, createSnapshots);
Compilation\InitializerSemanticModel.cs (3)
258out NullableWalker.SnapshotManager snapshotManager, 263return NullableWalker.AnalyzeAndRewrite(Compilation, MemberSymbol, boundRoot, binder, initialState: null, diagnostics, createSnapshots, out snapshotManager, ref remappedSymbols); 268NullableWalker.AnalyzeWithoutRewrite(Compilation, MemberSymbol, boundRoot, binder, diagnostics, createSnapshots);
Compilation\MemberSemanticModel.cs (8)
35private NullableWalker.SnapshotManager _lazySnapshotManager; 155protected virtual NullableWalker.SnapshotManager GetSnapshotManager() 206return (BoundExpression)NullableWalker.AnalyzeAndRewriteSpeculation(position, boundRoot, binder, snapshotManager, newSnapshots: out _, remappedSymbols: ref ignored); 1473protected void UnguardedAddBoundTreeForStandaloneSyntax(SyntaxNode syntax, BoundNode bound, NullableWalker.SnapshotManager manager = null, ImmutableDictionary<Symbol, Symbol> remappedSymbols = null) 1481protected void GuardedAddBoundTreeForStandaloneSyntax(SyntaxNode syntax, BoundNode bound, NullableWalker.SnapshotManager manager = null, ImmutableDictionary<Symbol, Symbol> remappedSymbols = null) 1959NullableWalker.SnapshotManager snapshotManager; 1977boundRoot = NullableWalker.AnalyzeAndRewriteSpeculation(_containingPublicSemanticModel.OriginalPositionForSpeculation, boundRoot, binder, parentSnapshotManagerOpt, out var newSnapshots, ref remappedSymbols); 2044out NullableWalker.SnapshotManager? snapshotManager,
Compilation\MemberSemanticModel.SpeculativeMemberSemanticModel.cs (4)
37protected override NullableWalker.SnapshotManager GetSnapshotManager() 48out NullableWalker.SnapshotManager snapshotManager, 52return NullableWalker.AnalyzeAndRewrite(Compilation, MemberSymbol as MethodSymbol, boundRoot, binder, initialState: null, diagnostics, createSnapshots: false, out snapshotManager, ref remappedSymbols); 57NullableWalker.AnalyzeWithoutRewrite(Compilation, MemberSymbol as MethodSymbol, boundRoot, binder, diagnostics, createSnapshots);
Compilation\MethodBodySemanticModel.cs (8)
24internal readonly NullableWalker.SnapshotManager? SnapshotManager; 31NullableWalker.SnapshotManager? snapshotManager = null, 116NullableWalker.SnapshotManager snapshotManagerOpt, 128NullableWalker.SnapshotManager snapshotManagerOpt, 292out NullableWalker.SnapshotManager snapshotManager, 295var afterInitializersState = NullableWalker.GetAfterInitializersState(Compilation, MemberSymbol, boundRoot); 296return NullableWalker.AnalyzeAndRewrite(Compilation, MemberSymbol, boundRoot, binder, afterInitializersState, diagnostics, createSnapshots, out snapshotManager, ref remappedSymbols); 301NullableWalker.AnalyzeWithoutRewrite(Compilation, MemberSymbol, boundRoot, binder, diagnostics, createSnapshots);
Compilation\SpeculativeSemanticModelWithMemberModel.cs (5)
24private readonly NullableWalker.SnapshotManager? _parentSnapshotManagerOpt; 31NullableWalker.SnapshotManager? snapshotManagerOpt) 94NullableWalker.SnapshotManager? snapshotManagerOpt) 107NullableWalker.SnapshotManager? snapshotManagerOpt) 117internal NullableWalker.SnapshotManager? ParentSnapshotManagerOpt => _parentSnapshotManagerOpt;
Compiler\MethodCompiler.cs (9)
633NullableWalker.AnalyzeIfNeeded( 1000NullableWalker.AnalyzeIfNeeded( 1851NullableWalker.VariableState? nullableInitialState = null; 1898NullableWalker.SnapshotManager? snapshotManager = null; 1911methodBodyForSemanticModel = NullableWalker.AnalyzeAndRewrite( 1926NullableWalker.AnalyzeIfNeeded( 2024NullableWalker.AnalyzeIfNeeded( 2065NullableWalker.VariableState? getInitializerState(BoundNode? body) 2069return NullableWalker.GetAfterInitializersState(compilationState.Compilation, method, initializersBody, body, diagnostics);
FlowAnalysis\NullableWalker.cs (16)
27: LocalDataFlowPass<NullableWalker.LocalState, NullableWalker.LocalFunctionState> 37internal readonly ConcurrentDictionary<object, NullableWalker.Data> Data; 42Data = new ConcurrentDictionary<object, NullableWalker.Data>(); 1513NullableWalker.AnalyzeIfNeeded( 1647var walker = new NullableWalker( 1768var walker = new NullableWalker( 1820var walker = new NullableWalker(compilation, 1853NullableWalker walker, 4851var walker = new NullableWalker(binder.Compilation, 8034private readonly NullableWalker _walker; 8036internal MethodInferenceExtensions(NullableWalker walker) 12531public void NormalizeIfNeeded(int slot, NullableWalker walker, Variables variables, bool useNotNullsAsDefault = false) 12560public void Normalize(NullableWalker walker, Variables variables, bool useNotNullsAsDefault = false) 12576public void PopulateAll(NullableWalker walker) 12582private void Populate(NullableWalker walker, int start, bool useNotNullsAsDefault)
FlowAnalysis\NullableWalker_Patterns.cs (1)
359public static PossiblyConditionalState Create(NullableWalker nullableWalker)
Generated\BoundNodes.xml.Generated.cs (2)
12399private readonly NullableWalker.SnapshotManager? _snapshotManager; 12402public NullabilityRewriter(ImmutableDictionary<BoundExpression, (NullabilityInfo Info, TypeSymbol? Type)> updatedNullabilities, NullableWalker.SnapshotManager? snapshotManager, ImmutableDictionary<Symbol, Symbol>.Builder remappedSymbols)
Symbols\NullableFlowState.cs (1)
10/// The nullable state of an rvalue computed in <see cref="NullableWalker"/>.
Symbols\Source\SourceComplexParameterSymbol.cs (3)
264NullableWalker.AnalyzeIfNeeded(binder, parameterEqualsValue, valueSyntax, diagnostics.DiagnosticBag); 326if (attributes is null || !NullableWalker.NeedsAnalysis(DeclaringCompilation, attributes)) 353NullableWalker.AnalyzeIfNeeded(binder, parameterEqualsValue, parameterSyntax, diagnostics.DiagnosticBag);
Symbols\Source\SourceMemberContainerSymbol_ImplementationChecks.cs (3)
1278if (!NullableWalker.AreParameterAnnotationsCompatible( 1310else if (!NullableWalker.AreParameterAnnotationsCompatible( 1333if (notNullIfParameterNotNull.Contains(overrideParam.Name) && NullableWalker.GetParameterState(baseParam.TypeWithAnnotations, baseParam.FlowAnalysisAnnotations).IsNotNull)
Symbols\Symbol_Attributes.cs (1)
428NullableWalker.AnalyzeIfNeeded(attributeBinder, boundAttribute, boundAttribute.Syntax, diagnostics.DiagnosticBag);
Symbols\Synthesized\SynthesizedBackingFieldSymbol.cs (1)
219NullableWalker.AnalyzeIfNeeded(binder, boundGetAccessor, boundGetAccessor.Syntax, diagnostics, getterNullResilienceData: (getAccessor, _property.BackingField, assumedNullableAnnotation));