7 instantiations of BoundRecursivePattern
Microsoft.CodeAnalysis.CSharp (7)
Binder\Binder_Patterns.cs (2)
1272return new BoundRecursivePattern( 1677return new BoundRecursivePattern(
Binder\DecisionDagBuilder_CheckOrReachability.cs (3)
1175initialCheck = new BoundRecursivePattern(node.Syntax, declaredType: null, deconstructMethod: null, deconstruction: default, 1198BoundPattern newRecursive = new BoundRecursivePattern( 1233BoundPattern newRecursive = new BoundRecursivePattern(
Binder\UnionMatchingRewriter.cs (1)
461BoundPattern unionValueMatching = new BoundRecursivePattern(
Generated\BoundNodes.xml.Generated.cs (1)
8357var result = new BoundRecursivePattern(this.Syntax, declaredType, deconstructMethod, deconstruction, properties, isExplicitNotNullTest, unionMatchingMode, variable, variableAccess, inputType, narrowedType, this.HasErrors);
34 references to BoundRecursivePattern
Microsoft.CodeAnalysis.CSharp (34)
Binder\Binder_Patterns.cs (1)
136case BoundRecursivePattern _:
Binder\DecisionDagBuilder_CheckOrReachability.cs (3)
870or BoundRecursivePattern 1061if (pattern is BoundRecursivePattern recursivePattern) 1128public override BoundNode? VisitRecursivePattern(BoundRecursivePattern node)
Binder\DecisionDagBuilder.cs (2)
394case BoundRecursivePattern recursive: 934BoundRecursivePattern recursive,
Binder\RefSafetyAnalysis.cs (1)
684public override BoundNode? VisitRecursivePattern(BoundRecursivePattern node)
Binder\UnionMatchingRewriter.cs (3)
115public override BoundNode? VisitRecursivePattern(BoundRecursivePattern node) 117node = (BoundRecursivePattern)base.VisitRecursivePattern(node)!; 493case BoundRecursivePattern { DeclaredType: { } declaredType } recursivePattern:
BoundTree\BoundNode_Source.cs (1)
400case BoundRecursivePattern recursivePattern:
BoundTree\BoundPatternWithUnionMatching.cs (2)
31case BoundRecursivePattern p1: 32Debug.Assert(p1.DeclaredType == (object?)((BoundRecursivePattern)ExclusiveValuePattern).DeclaredType);
Compilation\CSharpSemanticModel.cs (2)
1904case BoundRecursivePattern pat: 2007private SymbolInfo GetSymbolInfoForDeconstruction(BoundRecursivePattern pat)
FlowAnalysis\AbstractFlowPass.cs (3)
927BoundTypePattern or BoundRecursivePattern or BoundITuplePattern or BoundRelationalPattern or 985case BoundRecursivePattern: 1068case BoundRecursivePattern:
FlowAnalysis\DefiniteAssignment.cs (2)
1985var pat = (BoundRecursivePattern)pattern;
FlowAnalysis\NullableWalker_Patterns.cs (2)
56public override BoundNode VisitRecursivePattern(BoundRecursivePattern node) 192case BoundRecursivePattern rp:
FlowAnalysis\VariablesDeclaredWalker.cs (1)
77case BoundRecursivePattern recursivePattern:
Generated\BoundNodes.xml.Generated.cs (9)
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) 8357var result = new BoundRecursivePattern(this.Syntax, declaredType, deconstructMethod, deconstruction, properties, isExplicitNotNullTest, unionMatchingMode, variable, variableAccess, inputType, narrowedType, this.HasErrors); 9513return VisitRecursivePattern((BoundRecursivePattern)node, arg); 9778public virtual R VisitRecursivePattern(BoundRecursivePattern node, A arg) => this.DefaultVisit(node, arg); 10019public virtual BoundNode? VisitRecursivePattern(BoundRecursivePattern node) => this.DefaultVisit(node); 10996public override BoundNode? VisitRecursivePattern(BoundRecursivePattern node) 12551public override BoundNode? VisitRecursivePattern(BoundRecursivePattern node) 15250public override BoundNode? VisitRecursivePattern(BoundRecursivePattern node) 17504public override TreeDumperNode VisitRecursivePattern(BoundRecursivePattern node, object? arg) => new TreeDumperNode("recursivePattern", null, new TreeDumperNode[]
Operations\CSharpOperationFactory.cs (2)
228return CreateBoundRecursivePatternOperation((BoundRecursivePattern)boundNode); 2619private IRecursivePatternOperation CreateBoundRecursivePatternOperation(BoundRecursivePattern boundRecursivePattern)