1 write to Input
Microsoft.CodeAnalysis.CSharp (1)
Generated\BoundNodes.xml.Generated.cs (1)
5251this.Input = input;
218 references to Input
Microsoft.CodeAnalysis.CSharp (218)
Binder\DecisionDagBuilder.cs (92)
256if (e.Input.Source is { }) 257usedValues.Add(e.Input.Source); 267if (d.Input.Source is { }) 268usedValues.Add(d.Input.Source); 477Input: { } propertyInput 534while (input.Source is BoundDagTypeEvaluation source && isDerivedType(source.Input.Type, symbol.ContainingType)) 536if (IsAnyUnionValue(source.Input, out _)) 544input = source.Input; 563if (IsAnyUnionValue(source.Input, out _)) 571input = source.Input; 676Input: { } tryGetValueInput 734Input: { } propertyInput 1229if (evaluation.Input.Source is { Id: -1 } source) 1235if (test.Input.Source is { Id: -1 } testSource) 1390state.SelectedTest = new BoundDagNonNullTest(t.Syntax, isExplicitTest: true, t.Input, t.HasErrors); 1482markUsedTemp(tempToIndex, ref nextTempIndex, ref usedTemps, eval.Input); 1703whenTrueValues.TryGetValue(test.Input, out IValueSet? whenTrueValuesOpt); 1704whenFalseValues.TryGetValue(test.Input, out IValueSet? whenFalseValuesOpt); 1759var input = test.Input; 1796if (!_forLowering && ValueSetFactory.TypeUnionValueSetFactoryForInput(typeTest.Input) is { } factory) 1802(var whenTrueValues, var whenFalseValues, fromTestPassing, var fromTestFailing) = splitValues(values, typeTest.Input, fromTestPassing); 1822if (!_forLowering && ValueSetFactory.TypeUnionValueSetFactoryForInput(nonNullTest.Input) is { } factory) 1826(var whenTrueValues, var whenFalseValues, fromTestPassing, var fromTestFailing) = splitValues(values, nonNullTest.Input, fromTestPassing); 1843if (!_forLowering && ValueSetFactory.TypeUnionValueSetFactoryForInput(nullTest.Input) is { } factory) 1847(var whenTrueValues, var whenFalseValues, fromTestPassing, var fromTestFailing) = splitValues(values, nullTest.Input, fromTestPassing); 1862BoundDagTemp input = e.Input; 1869input = slice.Input; 1877BoundDagTemp input = e.Input; 1884input = slice.Input; 2297return test is BoundDagExplicitNullTest && IsAnyUnionValue(NotTypeEvaluationInput(test.Input), out testUnionInstance); 2303return test is BoundDagNonNullTest && IsAnyUnionValue(NotTypeEvaluationInput(test.Input), out testUnionInstance); 2308if (test is BoundDagTypeTest typeTest && IsAnyUnionValue(NotTypeEvaluationInput(test.Input), out testUnionInstance)) 2321if (test is BoundDagValueTest hasValueTest && IsUnionHasValue(test.Input, out testUnionInstance)) 2339if (test is BoundDagValueTest tryGetValueTest && IsUnionTryGetValueReturn(test.Input, out targetType, out testUnionInstance, out tryGetValueEvaluation)) 2358if (test.Input == other.Input) 2368!test.Input.Type.Equals(other.Input.Type, TypeCompareKind.AllIgnoreOptions)) 2373return IsSameEntity(test.Input, other.Input); 2385s1Input = s1.Input; 2389s2Input = s2.Input; 2397if (IsAnyUnionValue(s1.Input, out BoundDagTemp? s1UnionInstance) && 2398IsAnyUnionValue(s2.Input, out BoundDagTemp? s2UnionInstance)) 2416if (IsUnionValue(s1.Input, out _)) 2418s1Input = s1.Input; 2422if (IsUnionTryGetValueValue(s1.Input, out _)) 2433if (IsUnionValue(s2.Input, out _)) 2435s2Input = s2.Input; 2439if (IsUnionTryGetValueValue(s2.Input, out _)) 2476s1Input = OriginalInput(s1.Input); 2477s2Input = OriginalInput(s2.Input); 2534Debug.Assert(s1.Input.Source is BoundDagTypeEvaluation); 2535Debug.Assert(s2.Input.Source is BoundDagTypeEvaluation); 2537BoundDagTemp s1Input = NotTypeEvaluationInput(s1.Input.Source); 2538BoundDagTemp s2Input = NotTypeEvaluationInput(s2.Input.Source); 2539return s1.Input.Type.Equals(s2.Input.Type, TypeCompareKind.AllIgnoreOptions) && s1Input.Equals(s2Input); 2595return s1.Input.Equals(s2.Input); 2622input = source.Input; 2630return NotTypeEvaluationInput(test.Input); 2860return $"t{tempIdentifier(a)}={a.Kind}({tempName(a.Input)} as {a.Type})"; 2862return $"t{tempIdentifier(e)}={e.Kind}({tempName(e.Input)}.{e.Field.Name})"; 2864return $"t{tempIdentifier(e)}={e.Kind}({tempName(e.Input)}.{e.Property.Name})"; 2866return $"t{tempIdentifier(e)}={e.Kind}({tempName(e.Input)}[{e.Index}])"; 2868return $"{e.Kind}({tempName(e.Target)}<--{tempName(e.Input)})"; 2870return $"t{tempIdentifier(e)}={e.Kind}({tempName(e.Input)})"; 2872return $"?{d.Kind}({tempName(d.Input)} is {b.Type})"; 2874return $"?{d.Kind}({tempName(d.Input)} == {v.Value})"; 2884return $"?{d.Kind}({tempName(d.Input)} {operatorName} {r.Value})"; 2886return $"?{d.Kind}({tempName(d.Input)})"; 3458if (test.Input.Source is BoundDagPropertyEvaluation { IsLengthOrCount: true } e) 3631IsSameEntity(eval.Input, e1.Input)) 3633Debug.Assert(!eval.Input.Equals(e1.Input)); 3722else if (typeEval.Input is { Source: not BoundDagTypeEvaluation } typeEvalInput) 3763var newTypeEval = typeEval.Update(e1.Input); 3855Debug.Assert(passThrough.Input.Source is BoundDagTypeEvaluation); 3856return new BoundDagPassThroughEvaluation(passThrough.Syntax, ((BoundDagTypeEvaluation)UpdateDagTempReferences((BoundDagTypeEvaluation)passThrough.Input.Source, ref tempMap)).MakeResultTemp()); 3863if (!TryGetTempReplacement(tempMap, eval.Input, out BoundDagTemp? replacement)) 3875if (!TryGetTempReplacement(tempMap, indexer.Input, out BoundDagTemp? inputReplacement)) 3891if (!TryGetTempReplacement(tempMap, slice.Input, out BoundDagTemp? inputReplacement)) 3907if (!TryGetTempReplacement(tempMap, assignment.Input, out BoundDagTemp? inputReplacement)) 3917if (!TryGetTempReplacement(tempMap, deconstruct.Input, out BoundDagTemp? replacement)) 3939if (!TryGetTempReplacement(tempMap, test.Input, out BoundDagTemp? replacement)) 4594if (easyOutForLowering != (object)planA && !forLowering && ValueSetFactory.TypeUnionValueSetFactoryForInput(planA.Input) is not null) 4620return planA.Input.Equals(planB1.Input) ? planB1 : planA; 4627return planA.Input.Equals(planB2.Input) ? planB2 : planA;
Binder\PatternExplainer.cs (4)
300BoundDagTemp temp = test.Input; 301if (test is BoundDagTypeTest && sense == false && ValueSetFactory.TypeUnionValueSetFactoryForInput(test.Input) is null) 318BoundDagTemp temp = e.Evaluation.Input; 700e.Input.Type is NamedTypeSymbol { IsUnionType: true } unionType &&
BoundTree\BoundDagEvaluation.cs (9)
25other.Input.Equals(this.Input)); 246return new OneOrMany<BoundDagTemp>([Input, LengthTemp]); 283return new OneOrMany<BoundDagTemp>([Input, LengthTemp]); 301this.Input.Equals(assignment.Input); 382Debug.Assert(Input.Source is BoundDagTypeEvaluation); 383return DecisionDagBuilder.NotTypeEvaluationInput(Input.Source).GetHashCode(); 388return Input;
BoundTree\BoundDagTest.cs (19)
26if (!this.Input.Equals(other.Input)) 48return Hash.Combine(((int)Kind).GetHashCode(), Input.GetHashCode()); 56return new OneOrMany<BoundDagTemp>(Input); 65return $"{a.GetOutputTempDebuggerDisplay()} = ({a.Type}){a.Input.GetDebuggerDisplay()}"; 67return $"{e.GetOutputTempDebuggerDisplay()} = {e.Input.GetDebuggerDisplay()}.{e.Property.Name}"; 69return $"{e.GetOutputTempDebuggerDisplay()} = {e.Input.GetDebuggerDisplay()}.{e.Field.Name}"; 100result += $") {d.GetOutputTempDebuggerDisplay()} = {d.Input.GetDebuggerDisplay()}"; 103return $"{i.GetOutputTempDebuggerDisplay()} = {i.Input.GetDebuggerDisplay()}[{i.Index}]"; 105return $"{i.GetOutputTempDebuggerDisplay()} = {i.Input.GetDebuggerDisplay()}[{i.Index}]"; 107return $"{i.Target.GetDebuggerDisplay()} <-- {i.Input.GetDebuggerDisplay()}"; 109return $"PassThrough {i.Input.GetDebuggerDisplay()}"; 111return $"{e.GetOutputTempDebuggerDisplay()} = {e.Kind}({e.Input.GetDebuggerDisplay()})"; 114return $"{b.Input.GetDebuggerDisplay()} is {typeName}"; 116return $"{v.Input.GetDebuggerDisplay()} == {v.Value.GetValueToDisplay()}"; 118return $"{nn.Input.GetDebuggerDisplay()} != null"; 120return $"{n.Input.GetDebuggerDisplay()} == null"; 130return $"{r.Input.GetDebuggerDisplay()} {operatorName} {r.Value.GetValueToDisplay()}"; 132return $"{this.Kind}({this.Input.GetDebuggerDisplay()})";
BoundTree\BoundDecisionDag.cs (1)
176if (!choice.Input.IsOriginalInput)
FlowAnalysis\NullableWalker_Patterns.cs (8)
438(int inputSlot, TypeSymbol inputType) = tempMap.TryGetValue(evaluation.Input, out var slotAndType) ? slotAndType : throw ExceptionUtilities.Unreachable(); 538bool foundTemp = tempMap.TryGetValue(test.Input, out var slotAndType); 585&& t.Input.Source is BoundDagTypeEvaluation { Input: { IsOriginalInput: true } }) 685getOrMakeAndRegisterDagTempSlot(evaluation.Input); 686(int inputSlot, TypeSymbol inputType) = tempMap.TryGetValue(evaluation.Input, out var slotAndType) ? slotAndType : throw ExceptionUtilities.Unreachable(); 708switch (_conversions.WithNullability(false).ClassifyConversionFromType(e.Input.Type, e.Type, isChecked: false, ref discardedUseSiteInfo).Kind) 733var originalTupleElement = e.Input.IsOriginalInput && !originalInputElementSlots.IsDefault
Generated\BoundNodes.xml.Generated.cs (62)
5308if (!TypeSymbol.Equals(type, this.Type, TypeCompareKind.ConsiderEverything) || input != this.Input) 5336if (isExplicitTest != this.IsExplicitTest || input != this.Input) 5362if (input != this.Input) 5391if (value != this.Value || input != this.Input) 5422if (operatorKind != this.OperatorKind || value != this.Value || input != this.Input) 5463if (!Symbols.SymbolEqualityComparer.ConsiderEverything.Equals(deconstructMethod, this.DeconstructMethod) || input != this.Input) 5492if (!TypeSymbol.Equals(type, this.Type, TypeCompareKind.ConsiderEverything) || input != this.Input) 5521if (!Symbols.SymbolEqualityComparer.ConsiderEverything.Equals(field, this.Field) || input != this.Input) 5552if (!Symbols.SymbolEqualityComparer.ConsiderEverything.Equals(property, this.Property) || isLengthOrCount != this.IsLengthOrCount || input != this.Input) 5583if (!Symbols.SymbolEqualityComparer.ConsiderEverything.Equals(property, this.Property) || index != this.Index || input != this.Input) 5630if (!TypeSymbol.Equals(indexerType, this.IndexerType, TypeCompareKind.ConsiderEverything) || lengthTemp != this.LengthTemp || index != this.Index || indexerAccess != this.IndexerAccess || receiverPlaceholder != this.ReceiverPlaceholder || argumentPlaceholder != this.ArgumentPlaceholder || input != this.Input) 5679if (!TypeSymbol.Equals(sliceType, this.SliceType, TypeCompareKind.ConsiderEverything) || lengthTemp != this.LengthTemp || startIndex != this.StartIndex || endIndex != this.EndIndex || indexerAccess != this.IndexerAccess || receiverPlaceholder != this.ReceiverPlaceholder || argumentPlaceholder != this.ArgumentPlaceholder || input != this.Input) 5708if (target != this.Target || input != this.Input) 5734if (input != this.Input) 10603this.Visit(node.Input); 10608this.Visit(node.Input); 10613this.Visit(node.Input); 10618this.Visit(node.Input); 10623this.Visit(node.Input); 10628this.Visit(node.Input); 10633this.Visit(node.Input); 10638this.Visit(node.Input); 10643this.Visit(node.Input); 10648this.Visit(node.Input); 10657this.Visit(node.Input); 10666this.Visit(node.Input); 10672this.Visit(node.Input); 10677this.Visit(node.Input); 11991BoundDagTemp input = (BoundDagTemp)this.Visit(node.Input); 11997BoundDagTemp input = (BoundDagTemp)this.Visit(node.Input); 12002BoundDagTemp input = (BoundDagTemp)this.Visit(node.Input); 12007BoundDagTemp input = (BoundDagTemp)this.Visit(node.Input); 12012BoundDagTemp input = (BoundDagTemp)this.Visit(node.Input); 12018BoundDagTemp input = (BoundDagTemp)this.Visit(node.Input); 12023BoundDagTemp input = (BoundDagTemp)this.Visit(node.Input); 12030BoundDagTemp input = (BoundDagTemp)this.Visit(node.Input); 12036BoundDagTemp input = (BoundDagTemp)this.Visit(node.Input); 12042BoundDagTemp input = (BoundDagTemp)this.Visit(node.Input); 12051BoundDagTemp input = (BoundDagTemp)this.Visit(node.Input); 12061BoundDagTemp input = (BoundDagTemp)this.Visit(node.Input); 12068BoundDagTemp input = (BoundDagTemp)this.Visit(node.Input); 12073BoundDagTemp input = (BoundDagTemp)this.Visit(node.Input); 14171BoundDagTemp input = (BoundDagTemp)this.Visit(node.Input); 14178BoundDagTemp input = (BoundDagTemp)this.Visit(node.Input); 14185BoundDagTemp input = (BoundDagTemp)this.Visit(node.Input); 14192BoundDagTemp input = (BoundDagTemp)this.Visit(node.Input); 14203BoundDagTemp input = (BoundDagTemp)this.Visit(node.Input); 14214BoundDagTemp input = (BoundDagTemp)this.Visit(node.Input); 16675new TreeDumperNode("input", null, new TreeDumperNode[] { Visit(node.Input, null) }), 16682new TreeDumperNode("input", null, new TreeDumperNode[] { Visit(node.Input, null) }), 16688new TreeDumperNode("input", null, new TreeDumperNode[] { Visit(node.Input, null) }), 16695new TreeDumperNode("input", null, new TreeDumperNode[] { Visit(node.Input, null) }), 16703new TreeDumperNode("input", null, new TreeDumperNode[] { Visit(node.Input, null) }), 16710new TreeDumperNode("input", null, new TreeDumperNode[] { Visit(node.Input, null) }), 16717new TreeDumperNode("input", null, new TreeDumperNode[] { Visit(node.Input, null) }), 16724new TreeDumperNode("input", null, new TreeDumperNode[] { Visit(node.Input, null) }), 16732new TreeDumperNode("input", null, new TreeDumperNode[] { Visit(node.Input, null) }), 16740new TreeDumperNode("input", null, new TreeDumperNode[] { Visit(node.Input, null) }), 16752new TreeDumperNode("input", null, new TreeDumperNode[] { Visit(node.Input, null) }), 16765new TreeDumperNode("input", null, new TreeDumperNode[] { Visit(node.Input, null) }), 16772new TreeDumperNode("input", null, new TreeDumperNode[] { Visit(node.Input, null) }), 16778new TreeDumperNode("input", null, new TreeDumperNode[] { Visit(node.Input, null) }),
Lowering\LocalRewriter\LocalRewriter.DecisionDagRewriter.cs (6)
504var input = ((BoundTestDecisionDagNode)node).Test.Input; 535if (!t1.Input.Equals(t2.Input)) 538if (t1.Input.Type.SpecialType is SpecialType.System_Double or SpecialType.System_Single) 570if (!(node is BoundTestDecisionDagNode testNode && testNode.Test.Input.Equals(input))) 594vd.Input.Equals(input) &&
Lowering\LocalRewriter\LocalRewriter.PatternLocalRewriter.cs (17)
137BoundExpression input = _tempAllocator.GetTemp(evaluation.Input); 322Debug.Assert(!e.Target.Equals(e.Input)); 324BoundExpression right = _tempAllocator.GetTemp(e.Input); 368BoundExpression input = _tempAllocator.GetTemp(test.Input); 506typeEvaluation1.Input.Equals(typeDecision.Input)) 508BoundExpression input = _tempAllocator.GetTemp(test.Input); 519_factory.Compilation.Conversions.ClassifyBuiltInConversion(test.Input.Type, typeEvaluation2.Type, isChecked: false, ref useSiteInfo) is Conversion conv && 521typeEvaluation2.Input == nonNullTest.Input) 523BoundExpression input = _tempAllocator.GetTemp(test.Input); 620return t.Test.Input.IsOriginalInput; 625return f.Input.IsOriginalInput && !f.Field.IsTupleElement(); 627return e.Evaluation.Input.IsOriginalInput; 696eval.Input.IsOriginalInput && 708Debug.Assert(!evalNode.Evaluation.Input.IsOriginalInput); 712Debug.Assert(!testNode.Test.Input.IsOriginalInput);