10 interfaces inheriting from IPatternOperation
Microsoft.CodeAnalysis (10)
1 implementation of IPatternOperation
Microsoft.CodeAnalysis (1)
76 references to IPatternOperation
Microsoft.CodeAnalysis (43)
Generated\Operations.Generated.cs (30)
1988IPatternOperation Pattern { get; }
2515IPatternOperation Pattern { get; }
2986ImmutableArray<IPatternOperation> DeconstructionSubpatterns { get; }
3059IPatternOperation Pattern { get; }
3095IPatternOperation Pattern { get; }
3249IPatternOperation Pattern { get; }
3275IPatternOperation LeftPattern { get; }
3279IPatternOperation RightPattern { get; }
3516ImmutableArray<IPatternOperation> Patterns { get; }
3542IPatternOperation? Pattern { get; }
6820internal IsPatternOperation(IOperation value, IPatternOperation pattern, SemanticModel? semanticModel, SyntaxNode syntax, ITypeSymbol? type, bool isImplicit)
6828public IPatternOperation Pattern { get; }
7777internal PatternCaseClauseOperation(ILabelSymbol label, IPatternOperation pattern, IOperation? guard, SemanticModel? semanticModel, SyntaxNode syntax, bool isImplicit)
7784public IPatternOperation Pattern { get; }
8854internal RecursivePatternOperation(ITypeSymbol matchedType, ISymbol? deconstructSymbol, ImmutableArray<IPatternOperation> deconstructionSubpatterns, ImmutableArray<IPropertySubpatternOperation> propertySubpatterns, ISymbol? declaredSymbol, ITypeSymbol inputType, ITypeSymbol narrowedType, SemanticModel? semanticModel, SyntaxNode syntax, bool isImplicit)
8865public ImmutableArray<IPatternOperation> DeconstructionSubpatterns { get; }
9013internal SwitchExpressionArmOperation(IPatternOperation pattern, IOperation? guard, IOperation value, ImmutableArray<ILocalSymbol> locals, SemanticModel? semanticModel, SyntaxNode syntax, bool isImplicit)
9021public IPatternOperation Pattern { get; }
9088internal PropertySubpatternOperation(IOperation member, IPatternOperation pattern, SemanticModel? semanticModel, SyntaxNode syntax, bool isImplicit)
9095public IPatternOperation Pattern { get; }
9465internal NegatedPatternOperation(IPatternOperation pattern, ITypeSymbol inputType, ITypeSymbol narrowedType, SemanticModel? semanticModel, SyntaxNode syntax, bool isImplicit)
9470public IPatternOperation Pattern { get; }
9516internal BinaryPatternOperation(BinaryOperatorKind operatorKind, IPatternOperation leftPattern, IPatternOperation rightPattern, ITypeSymbol inputType, ITypeSymbol narrowedType, SemanticModel? semanticModel, SyntaxNode syntax, bool isImplicit)
9524public IPatternOperation LeftPattern { get; }
9525public IPatternOperation RightPattern { get; }
9984internal ListPatternOperation(ISymbol? lengthSymbol, ISymbol? indexerSymbol, ImmutableArray<IPatternOperation> patterns, ISymbol? declaredSymbol, ITypeSymbol inputType, ITypeSymbol narrowedType, SemanticModel? semanticModel, SyntaxNode syntax, bool isImplicit)
9994public ImmutableArray<IPatternOperation> Patterns { get; }
10045internal SlicePatternOperation(ISymbol? sliceSymbol, IPatternOperation? pattern, ITypeSymbol inputType, ITypeSymbol narrowedType, SemanticModel? semanticModel, SyntaxNode syntax, bool isImplicit)
10052public IPatternOperation? Pattern { get; }
Operations\ControlFlowGraphBuilder.cs (13)
5511var pattern = (IPatternOperation)VisitRequired(patternClause.Pattern);
7198var visitedPattern = (IPatternOperation)VisitRequired(operation.Pattern);
7332leftPattern: (IPatternOperation)VisitRequired(operation.LeftPattern),
7333rightPattern: (IPatternOperation)VisitRequired(operation.RightPattern),
7344pattern: (IPatternOperation)VisitRequired(operation.Pattern),
7380(IPatternOperation?)Visit(operation.Pattern),
7393operation.Patterns.SelectAsArray((p, @this) => (IPatternOperation)@this.VisitRequired(p), this),
7407operation.DeconstructionSubpatterns.SelectAsArray((p, @this) => (IPatternOperation)@this.VisitRequired(p), this),
7421(IPatternOperation)VisitRequired(operation.Pattern),
7491var visitedPattern = (IPatternOperation)VisitRequired(arm.Pattern);
Microsoft.CodeAnalysis.CodeStyle (1)
Microsoft.CodeAnalysis.CSharp (22)
Operations\CSharpOperationFactory.cs (22)
2439ImmutableArray<IPatternOperation> deconstructionSubpatterns = boundRecursivePattern.Deconstruction is { IsDefault: false } deconstructions
2440? deconstructions.SelectAsArray((p, fac) => (IPatternOperation)fac.Create(p.Pattern), this)
2441: ImmutableArray<IPatternOperation>.Empty;
2460ImmutableArray<IPatternOperation> deconstructionSubpatterns = boundITuplePattern.Subpatterns is { IsDefault: false } subpatterns
2461? subpatterns.SelectAsArray((p, fac) => (IPatternOperation)fac.Create(p.Pattern), this)
2462: ImmutableArray<IPatternOperation>.Empty;
2493pattern: (IPatternOperation?)Create(boundNode.Pattern),
2506patterns: boundNode.Subpatterns.SelectAsArray((p, fac) => (IPatternOperation)fac.Create(p), this),
2518(IPatternOperation)Create(boundNegatedPattern.Negated),
2530(IPatternOperation)Create(boundBinaryPattern.Left),
2531(IPatternOperation)Create(boundBinaryPattern.Right),
2587IPatternOperation pattern = (IPatternOperation)Create(boundSwitchExpressionArm.Pattern);
2620IPatternOperation pattern = (IPatternOperation)Create(boundSwitchLabel.Pattern);
2629IPatternOperation pattern = (IPatternOperation)Create(boundIsPatternExpression.Pattern);
2713IPatternOperation pattern = (IPatternOperation)Create(subpattern.Pattern);
2737IPatternOperation nestedPattern = new RecursivePatternOperation(
2738matchedType: previousType, deconstructSymbol: null, deconstructionSubpatterns: ImmutableArray<IPatternOperation>.Empty,
2747IPropertySubpatternOperation createPropertySubpattern(Symbol? symbol, IPatternOperation pattern, ITypeSymbol receiverType, SyntaxNode nameSyntax, bool isSingle)
Microsoft.CodeAnalysis.CSharp.CodeStyle.Fixes (3)
Microsoft.CodeAnalysis.CSharp.Features (2)
Microsoft.CodeAnalysis.CSharp.Workspaces (1)
Microsoft.CodeAnalysis.Features (1)
Microsoft.CodeAnalysis.Test.Utilities (3)