26 instantiations of VisitResult
Microsoft.CodeAnalysis.CSharp (26)
FlowAnalysis\NullableWalker.cs (26)
167return new VisitResult(RValueType, lvalueType, NestedVisitResults); 170return new VisitResult(RValueType, lvalueType, StateForLambda); 362SetResult(expression, new VisitResult(resultType, lvalueType), updateAnalyzedNullability, isLvalue); 382SetAnalyzedNullability(expression, new VisitResult(resultType, lvalueType), isLvalue); 3704placeholderResult = new VisitResult(GetReturnTypeWithState(patternDisposeMethod), patternDisposeMethod.ReturnTypeWithAnnotations); 3711placeholderResult = new VisitResult(placeholder.Type, NullableAnnotation.NotAnnotated, NullableFlowState.NotNull); 3806SetAnalyzedNullability(node.DeclaredTypeOpt, new VisitResult(type.ToTypeWithState(), type), true); 4015var visitResult = new VisitResult(TypeWithState.Create(resultType), resultType, 4063result: new VisitResult( 4702var result = new VisitResult(objectInitializer.Type, NullableAnnotation.NotAnnotated, NullableFlowState.NotNull); 4727argumentResults = argumentResults.SetItem(0, new VisitResult(containingType, NullableAnnotation.NotAnnotated, NullableFlowState.NotNull)); 4853firstArgumentResult = new VisitResult(containingType, NullableAnnotation.NotAnnotated, NullableFlowState.NotNull); 4946SetAnalyzedNullability(node.ImplicitReceiverOpt, new VisitResult(node.ImplicitReceiverOpt.Type, NullableAnnotation.NotAnnotated, NullableFlowState.NotNull)); 4983new VisitResult( 5011SetResult(node, new VisitResult(resultType, lvalueType, stateForLambda), updateAnalyzedNullability: true, isLvalue: null); 5111SetAnalyzedNullability(currentDeclaration, new VisitResult(argumentType, property.TypeWithAnnotations)); 8502SetAnalyzedNullability(discard, new VisitResult(parameterWithState, parameterWithState.ToTypeWithAnnotations(compilation)), isLvalue: true); 10779SetAnalyzedNullability(sourceToParameterConversion, new VisitResult(operandType, operandType.ToTypeWithAnnotations(compilation))); 10799SetAnalyzedNullability(unionConstructionConversion, new VisitResult(unionTypeWithState, unionTypeWithState.ToTypeWithAnnotations(compilation))); 10857var visitResult = new VisitResult(resultType, resultType.ToTypeWithAnnotations(compilation)); 11624parameter, parameter.TypeWithAnnotations, GetParameterAnnotations(parameter), new VisitResult(variable.Type.ToTypeWithState(), variable.Type), 11639new VisitResult(variable.Type.ToTypeWithState(), variable.Type), 12643SetAnalyzedNullability(collectionExpression, new VisitResult(convertedResult, convertedResult.ToTypeWithAnnotations(compilation))); 12707var result = new VisitResult(GetReturnTypeWithState(moveNextAsyncMethod), moveNextAsyncMethod.ReturnTypeWithAnnotations); 12810SetAnalyzedNullability(node.IterationVariableType, new VisitResult(resultForType, destinationType), isLvalue: true); 13618new VisitResult(result, result.ToTypeWithAnnotations(compilation)),
83 references to VisitResult
Microsoft.CodeAnalysis.CSharp (83)
FlowAnalysis\NullableWalker.cs (83)
128public readonly VisitResult[]? NestedVisitResults; 156public VisitResult(TypeWithState rValueType, TypeWithAnnotations lValueType, VisitResult[] nestedVisitResults) 162internal VisitResult WithLValueType(TypeWithAnnotations lvalueType) 258private PooledDictionary<BoundValuePlaceholderBase, (BoundExpression? Replacement, VisitResult Result)>? _resultForPlaceholdersOpt; 272/// The delegate is invoked by <see cref="VisitConversion(BoundConversion, BoundExpression, Conversion, TypeWithAnnotations, TypeWithState, bool, bool, bool, AssignmentKind, ParameterSymbol, bool, bool, bool, bool, Optional&lt;LocalState&gt;,bool, int, Location, ArrayBuilder&lt;VisitResult&gt;)"/>. 303private VisitResult _visitResult; 311private VisitResult _currentConditionalReceiverVisitResult; 336VisitResult visitResult = _visitResult.WithLValueType(ResultType.ToTypeWithAnnotations(compilation)); 365private void SetResult(BoundExpression? expression, VisitResult visitResult, bool updateAnalyzedNullability, bool? isLvalue) 388private void SetAnalyzedNullability(BoundExpression? expr, VisitResult result, bool? isLvalue = null) 590private void AddPlaceholderReplacement(BoundValuePlaceholderBase placeholder, BoundExpression? expression, VisitResult result) 597_resultForPlaceholdersOpt ??= PooledDictionary<BoundValuePlaceholderBase, (BoundExpression? Replacement, VisitResult Result)>.GetInstance(); 3701VisitResult placeholderResult; 3991var resultBuilder = ArrayBuilder<VisitResult>.GetInstance(node.Elements.Length); 4015var visitResult = new VisitResult(TypeWithState.Create(resultType), resultType, 4147var addArgumentResult = _visitResult; 4188var itemResult = spread.EnumeratorInfoOpt == null ? default : _visitResult; 4340ImmutableArray<VisitResult> argumentResults = reinferenceResult.Results; 4341ImmutableArray<VisitResult> argumentConversionResultsOpt = reinferenceResult.ConversionResultsOpt; 4347(int slot, NullableFlowState resultState, Func<TypeSymbol, MethodSymbol?, ImmutableArray<VisitResult>, int>? initialStateInferenceCompletion) = 4363ImmutableArray<VisitResult> argumentResults, 4365Func<TypeSymbol, MethodSymbol?, ImmutableArray<VisitResult>, int>? initialStateInferenceCompletion, 4392ImmutableArray<VisitResult> argumentResults, 4394Func<TypeSymbol, MethodSymbol?, ImmutableArray<VisitResult>, int> initialStateInferenceCompletion, 4408(_, ImmutableArray<VisitResult> conversionResults, _) = argumentsCompletion(argumentResults, constructor?.Parameters ?? default, constructor); 4430(int slot, NullableFlowState resultState, Func<TypeSymbol, MethodSymbol?, ImmutableArray<VisitResult>, int>? completion) inferInitialObjectState( 4432ImmutableArray<BoundExpression> arguments, ImmutableArray<VisitResult> argumentResults, ImmutableArray<VisitResult> argumentConversionResultsOpt, 4534Func<TypeSymbol, MethodSymbol?, ImmutableArray<VisitResult>, int> inferInitialObjectStateAsContinuation( 4537ImmutableArray<VisitResult> argumentResults, 4540return (TypeSymbol type, MethodSymbol? constructor, ImmutableArray<VisitResult> argumentConversionResultsOpt) => 4652ImmutableArray<VisitResult> argumentResults = default; 4659out ImmutableArray<int> argsToParamsOpt, out BitVector defaultArguments, out bool usesExtensionReceiver, out VisitResult? firstArgumentResult); 4689InitializerCompletionAfterTargetType? setAnalyzedNullability(BoundAssignmentOperator node, BoundObjectInitializerMember objectInitializer, Symbol? updatedSymbol, ImmutableArray<VisitResult> argumentResults, 4702var result = new VisitResult(objectInitializer.Type, NullableAnnotation.NotAnnotated, NullableFlowState.NotNull); 4715InitializerCompletionAfterTargetType setAnalyzedNullabilityAsContinuation(BoundAssignmentOperator node, ImmutableArray<VisitResult> argumentResults, 4834out BitVector defaultArguments, out bool usesExtensionReceiver, out VisitResult? firstArgumentResult) 4895ImmutableArray<VisitResult> argumentResults = default; 4931ImmutableArray<VisitResult> argumentResults, 4956ImmutableArray<VisitResult> argumentResults, 4969static MethodSymbol addMethodAsMemberOfContainingType(BoundCollectionElementInitializer node, TypeSymbol containingType, ref ImmutableArray<VisitResult> argumentResults) 4977VisitResult receiverResult = argumentResults[0]; 4981var builder = ArrayBuilder<VisitResult>.GetInstance(argumentResults.Length); 6867VisitResult? extensionReceiverResult = null; 6977void reinferMethodAndVisitArguments(BoundCall node, TypeWithState receiverType, VisitResult? firstArgumentResult = null) 7013ImmutableArray<VisitResult> results = reinferenceResult.Results; 7054VisitResult? firstArgumentResult = null) 7185private void LearnFromEqualsMethod(MethodSymbol method, BoundCall node, TypeWithState receiverType, ImmutableArray<VisitResult> results) 7364public readonly ImmutableArray<VisitResult> Results; 7367public CompareExchangeInfo(ImmutableArray<BoundExpression> arguments, ImmutableArray<VisitResult> results, ImmutableArray<int> argsToParamsOpt) 7644private delegate (TMember? member, ImmutableArray<VisitResult> conversionResults, bool returnNotNull) ArgumentsCompletionDelegate<TMember>(ImmutableArray<VisitResult> argumentResults, ImmutableArray<ParameterSymbol> parametersOpt, TMember? member) where TMember : Symbol; 7649private readonly struct ReinferenceResult<TMember>(TMember? member, ImmutableArray<VisitResult> results, ImmutableArray<VisitResult> conversionResultsOpt, 7654public readonly ImmutableArray<VisitResult> Results = results; 7655public readonly ImmutableArray<VisitResult> ConversionResultsOpt = conversionResultsOpt; 7672VisitResult? firstArgumentResult = null) 7692ImmutableArray<VisitResult> results = VisitArgumentsEvaluate(argumentsNoConversions, refKindsOpt, GetParametersAnnotations(arguments, parametersOpt, argsToParamsOpt, expanded), defaultArguments, firstArgumentResult: firstArgumentResult); 7706ImmutableArray<VisitResult> results, 7765var conversionResultsBuilder = ArrayBuilder<VisitResult>.GetInstance(results.Length); 7876var result = results[i]; 7903return (ImmutableArray<VisitResult> results, ImmutableArray<ParameterSymbol> parametersOpt, TMember? member) => 8167private ImmutableArray<VisitResult> VisitArgumentsEvaluate( 8172VisitResult? firstArgumentResult = null) 8178return ImmutableArray<VisitResult>.Empty; 8181var resultsBuilder = ArrayBuilder<VisitResult>.GetInstance(n); 8230private VisitResult VisitArgumentEvaluate(BoundExpression argument, RefKind refKind, FlowAnalysisAnnotations annotations) 8242private VisitResult VisitArgumentEvaluateEpilogue(BoundExpression argument, RefKind refKind, FlowAnalysisAnnotations annotations) 8301VisitResult result, 8302ArrayBuilder<VisitResult>? conversionResultsBuilder, 8439VisitResult result, 8948private ImmutableArray<BoundExpression> GetArgumentsForMethodTypeInference(ImmutableArray<VisitResult> argumentResults, ImmutableArray<BoundExpression> arguments) 8959var visitArgumentResult = argumentResults[i]; 8964BoundExpression getArgumentForMethodTypeInference(BoundExpression argument, VisitResult visitResult) 9919ArrayBuilder<VisitResult>? previousArgumentConversionResults = null) 10857var visitResult = new VisitResult(resultType, resultType.ToTypeWithAnnotations(compilation)); 11847ImmutableArray<VisitResult> results = reinferenceResult.Results; 12040ImmutableArray<VisitResult> results = reinferenceResult.Results; 12254VisitResult? firstArgumentResult) 12347var receiverResult = _visitResult; 12707var result = new VisitResult(GetReturnTypeWithState(moveNextAsyncMethod), moveNextAsyncMethod.ReturnTypeWithAnnotations); 13870var result = value.Result; 13918var getAwaiterResult = _visitResult;