7 instantiations of BoundPositionalSubpattern
Microsoft.CodeAnalysis.CSharp (7)
Binder\Binder_Patterns.cs (6)
1332var boundSubpattern = new BoundPositionalSubpattern( 1367var boundSubpattern = new BoundPositionalSubpattern( 1414BoundPositionalSubpattern boundSubpattern = new BoundPositionalSubpattern( 1672subPatterns.Add(new BoundPositionalSubpattern(variable, symbol: null, pattern)); 1697subPatterns.Add(new BoundPositionalSubpattern(variable, symbol: null, pattern)); 1712var boundSubpattern = new BoundPositionalSubpattern(
Generated\BoundNodes.xml.Generated.cs (1)
8526var result = new BoundPositionalSubpattern(this.Syntax, symbol, pattern, this.HasErrors);
43 references to BoundPositionalSubpattern
Microsoft.CodeAnalysis.CSharp (43)
Binder\Binder_Patterns.cs (11)
1188ImmutableArray<BoundPositionalSubpattern> deconstructionSubpatterns = default; 1192var patternsBuilder = ArrayBuilder<BoundPositionalSubpattern>.GetInstance(positionalClause.Subpatterns.Count); 1284ArrayBuilder<BoundPositionalSubpattern> patterns, 1332var boundSubpattern = new BoundPositionalSubpattern( 1346ArrayBuilder<BoundPositionalSubpattern> patterns, 1367var boundSubpattern = new BoundPositionalSubpattern( 1382ArrayBuilder<BoundPositionalSubpattern> patterns, 1414BoundPositionalSubpattern boundSubpattern = new BoundPositionalSubpattern( 1620var subPatterns = ArrayBuilder<BoundPositionalSubpattern>.GetInstance(tupleDesignation.Variables.Count); 1703ArrayBuilder<BoundPositionalSubpattern> patterns, 1712var boundSubpattern = new BoundPositionalSubpattern(
Binder\DecisionDagBuilder_CheckOrReachability.cs (4)
1182ImmutableArray<BoundPositionalSubpattern> deconstruction = node.Deconstruction; 1196ImmutableArray<BoundPositionalSubpattern> newSubPatterns = discards.SetItem(i, deconstruction[i].WithPattern(newPattern)); 1288public override BoundNode? VisitPositionalSubpattern(BoundPositionalSubpattern node) 1319ImmutableArray<BoundPositionalSubpattern> newSubpatterns = discards.SetItem(i, subpatterns[i].WithPattern(newPattern));
Binder\RefSafetyAnalysis.cs (1)
719public override BoundNode? VisitPositionalSubpattern(BoundPositionalSubpattern node)
Binder\UnionMatchingRewriter.cs (1)
215public override BoundNode? VisitPositionalSubpattern(BoundPositionalSubpattern node)
BoundTree\BoundPositionalSubpattern.cs (1)
9internal BoundPositionalSubpattern WithPattern(BoundPattern pattern)
Compilation\CSharpSemanticModel.cs (1)
1909case BoundPositionalSubpattern subpattern:
FlowAnalysis\DefiniteAssignment.cs (2)
1988foreach (var subpat in pat.Deconstruction) 2020foreach (var subpat in pat.Subpatterns)
FlowAnalysis\NullableWalker_Patterns.cs (1)
44public override BoundNode VisitPositionalSubpattern(BoundPositionalSubpattern node)
FlowAnalysis\VariablesDeclaredWalker.cs (2)
78foreach (var subpattern in recursivePattern.Deconstruction.NullToEmpty()) 88foreach (var subpattern in ituplePattern.Subpatterns)
Generated\BoundNodes.xml.Generated.cs (19)
8324public BoundRecursivePattern(SyntaxNode syntax, BoundTypeExpression? declaredType, MethodSymbol? deconstructMethod, ImmutableArray<BoundPositionalSubpattern> deconstruction, ImmutableArray<BoundPropertySubpattern> properties, bool isExplicitNotNullTest, UnionMatchingMode unionMatchingMode, Symbol? variable, BoundExpression? variableAccess, TypeSymbol inputType, TypeSymbol narrowedType, bool hasErrors = false) 8345public ImmutableArray<BoundPositionalSubpattern> Deconstruction { get; } 8353public BoundRecursivePattern Update(BoundTypeExpression? declaredType, MethodSymbol? deconstructMethod, ImmutableArray<BoundPositionalSubpattern> deconstruction, ImmutableArray<BoundPropertySubpattern> properties, bool isExplicitNotNullTest, UnionMatchingMode unionMatchingMode, Symbol? variable, BoundExpression? variableAccess, TypeSymbol inputType, TypeSymbol narrowedType) 8450public BoundITuplePattern(SyntaxNode syntax, MethodSymbol getLengthMethod, MethodSymbol getItemMethod, ImmutableArray<BoundPositionalSubpattern> subpatterns, TypeSymbol inputType, TypeSymbol narrowedType, bool hasErrors = false) 8471public ImmutableArray<BoundPositionalSubpattern> Subpatterns { get; } 8476public BoundITuplePattern Update(MethodSymbol getLengthMethod, MethodSymbol getItemMethod, ImmutableArray<BoundPositionalSubpattern> subpatterns, TypeSymbol inputType, TypeSymbol narrowedType) 8522public BoundPositionalSubpattern Update(Symbol? symbol, BoundPattern pattern) 8526var result = new BoundPositionalSubpattern(this.Syntax, symbol, pattern, this.HasErrors); 9521return VisitPositionalSubpattern((BoundPositionalSubpattern)node, arg); 9782public virtual R VisitPositionalSubpattern(BoundPositionalSubpattern node, A arg) => this.DefaultVisit(node, arg); 10023public virtual BoundNode? VisitPositionalSubpattern(BoundPositionalSubpattern node) => this.DefaultVisit(node); 11020public override BoundNode? VisitPositionalSubpattern(BoundPositionalSubpattern node) 12556ImmutableArray<BoundPositionalSubpattern> deconstruction = this.VisitList(node.Deconstruction); 12590ImmutableArray<BoundPositionalSubpattern> subpatterns = this.VisitList(node.Subpatterns); 12595public override BoundNode? VisitPositionalSubpattern(BoundPositionalSubpattern node) 15257ImmutableArray<BoundPositionalSubpattern> deconstruction = this.VisitList(node.Deconstruction); 15294ImmutableArray<BoundPositionalSubpattern> subpatterns = this.VisitList(node.Subpatterns); 15298public override BoundNode? VisitPositionalSubpattern(BoundPositionalSubpattern node) 17555public override TreeDumperNode VisitPositionalSubpattern(BoundPositionalSubpattern node, object? arg) => new TreeDumperNode("positionalSubpattern", null, new TreeDumperNode[]