12 types derived from PatternSyntax
Microsoft.CodeAnalysis.CSharp (12)
_generated\1\Syntax.xml.Internal.Generated.cs (12)
8434
internal sealed partial class DiscardPatternSyntax :
PatternSyntax
8497
internal sealed partial class DeclarationPatternSyntax :
PatternSyntax
8573
internal sealed partial class VarPatternSyntax :
PatternSyntax
8649
internal sealed partial class RecursivePatternSyntax :
PatternSyntax
9052
internal sealed partial class ConstantPatternSyntax :
PatternSyntax
9116
internal sealed partial class ParenthesizedPatternSyntax :
PatternSyntax
9201
internal sealed partial class RelationalPatternSyntax :
PatternSyntax
9278
internal sealed partial class TypePatternSyntax :
PatternSyntax
9342
internal sealed partial class BinaryPatternSyntax :
PatternSyntax
9427
internal sealed partial class UnaryPatternSyntax :
PatternSyntax
9503
internal sealed partial class ListPatternSyntax :
PatternSyntax
9615
internal sealed partial class SlicePatternSyntax :
PatternSyntax
113 references to PatternSyntax
Microsoft.CodeAnalysis.CSharp (113)
_generated\0\Syntax.xml.Main.Generated.cs (10)
3745
return (IsPatternExpressionSyntax)Syntax.InternalSyntax.SyntaxFactory.IsPatternExpression((Syntax.InternalSyntax.ExpressionSyntax)expression.Green, (Syntax.InternalSyntax.SyntaxToken)isKeyword.Node!, (Syntax.InternalSyntax.
PatternSyntax
)pattern.Green).CreateRed();
3845
return (SubpatternSyntax)Syntax.InternalSyntax.SyntaxFactory.Subpattern(expressionColon == null ? null : (Syntax.InternalSyntax.BaseExpressionColonSyntax)expressionColon.Green, (Syntax.InternalSyntax.
PatternSyntax
)pattern.Green).CreateRed();
3865
return (ParenthesizedPatternSyntax)Syntax.InternalSyntax.SyntaxFactory.ParenthesizedPattern((Syntax.InternalSyntax.SyntaxToken)openParenToken.Node!, (Syntax.InternalSyntax.
PatternSyntax
)pattern.Green, (Syntax.InternalSyntax.SyntaxToken)closeParenToken.Node!).CreateRed();
3913
return (BinaryPatternSyntax)Syntax.InternalSyntax.SyntaxFactory.BinaryPattern(kind, (Syntax.InternalSyntax.
PatternSyntax
)left.Green, (Syntax.InternalSyntax.SyntaxToken)operatorToken.Node!, (Syntax.InternalSyntax.
PatternSyntax
)right.Green).CreateRed();
3933
return (UnaryPatternSyntax)Syntax.InternalSyntax.SyntaxFactory.UnaryPattern((Syntax.InternalSyntax.SyntaxToken)operatorToken.Node!, (Syntax.InternalSyntax.
PatternSyntax
)pattern.Green).CreateRed();
3945
return (ListPatternSyntax)Syntax.InternalSyntax.SyntaxFactory.ListPattern((Syntax.InternalSyntax.SyntaxToken)openBracketToken.Node!, patterns.Node.ToGreenSeparatedList<Syntax.InternalSyntax.
PatternSyntax
>(), (Syntax.InternalSyntax.SyntaxToken)closeBracketToken.Node!, designation == null ? null : (Syntax.InternalSyntax.VariableDesignationSyntax)designation.Green).CreateRed();
3960
return (SlicePatternSyntax)Syntax.InternalSyntax.SyntaxFactory.SlicePattern((Syntax.InternalSyntax.SyntaxToken)dotDotToken.Node!, pattern == null ? null : (Syntax.InternalSyntax.
PatternSyntax
)pattern.Green).CreateRed();
4670
return (CasePatternSwitchLabelSyntax)Syntax.InternalSyntax.SyntaxFactory.CasePatternSwitchLabel((Syntax.InternalSyntax.SyntaxToken)keyword.Node!, (Syntax.InternalSyntax.
PatternSyntax
)pattern.Green, whenClause == null ? null : (Syntax.InternalSyntax.WhenClauseSyntax)whenClause.Green, (Syntax.InternalSyntax.SyntaxToken)colonToken.Node!).CreateRed();
4730
return (SwitchExpressionArmSyntax)Syntax.InternalSyntax.SyntaxFactory.SwitchExpressionArm((Syntax.InternalSyntax.
PatternSyntax
)pattern.Green, whenClause == null ? null : (Syntax.InternalSyntax.WhenClauseSyntax)whenClause.Green, (Syntax.InternalSyntax.SyntaxToken)equalsGreaterThanToken.Node!, (Syntax.InternalSyntax.ExpressionSyntax)expression.Green).CreateRed();
_generated\1\Syntax.xml.Internal.Generated.cs (86)
8186
internal readonly
PatternSyntax
pattern;
8188
internal IsPatternExpressionSyntax(SyntaxKind kind, ExpressionSyntax expression, SyntaxToken isKeyword,
PatternSyntax
pattern, DiagnosticInfo[]? diagnostics, SyntaxAnnotation[]? annotations)
8200
internal IsPatternExpressionSyntax(SyntaxKind kind, ExpressionSyntax expression, SyntaxToken isKeyword,
PatternSyntax
pattern, SyntaxFactoryContext context)
8213
internal IsPatternExpressionSyntax(SyntaxKind kind, ExpressionSyntax expression, SyntaxToken isKeyword,
PatternSyntax
pattern)
8229
public
PatternSyntax
Pattern => this.pattern;
8245
public IsPatternExpressionSyntax Update(ExpressionSyntax expression, SyntaxToken isKeyword,
PatternSyntax
pattern)
8970
internal readonly
PatternSyntax
pattern;
8972
internal SubpatternSyntax(SyntaxKind kind, BaseExpressionColonSyntax? expressionColon,
PatternSyntax
pattern, DiagnosticInfo[]? diagnostics, SyntaxAnnotation[]? annotations)
8985
internal SubpatternSyntax(SyntaxKind kind, BaseExpressionColonSyntax? expressionColon,
PatternSyntax
pattern, SyntaxFactoryContext context)
8999
internal SubpatternSyntax(SyntaxKind kind, BaseExpressionColonSyntax? expressionColon,
PatternSyntax
pattern)
9013
public
PatternSyntax
Pattern => this.pattern;
9028
public SubpatternSyntax Update(BaseExpressionColonSyntax expressionColon,
PatternSyntax
pattern)
9119
internal readonly
PatternSyntax
pattern;
9122
internal ParenthesizedPatternSyntax(SyntaxKind kind, SyntaxToken openParenToken,
PatternSyntax
pattern, SyntaxToken closeParenToken, DiagnosticInfo[]? diagnostics, SyntaxAnnotation[]? annotations)
9134
internal ParenthesizedPatternSyntax(SyntaxKind kind, SyntaxToken openParenToken,
PatternSyntax
pattern, SyntaxToken closeParenToken, SyntaxFactoryContext context)
9147
internal ParenthesizedPatternSyntax(SyntaxKind kind, SyntaxToken openParenToken,
PatternSyntax
pattern, SyntaxToken closeParenToken)
9160
public
PatternSyntax
Pattern => this.pattern;
9177
public ParenthesizedPatternSyntax Update(SyntaxToken openParenToken,
PatternSyntax
pattern, SyntaxToken closeParenToken)
9344
internal readonly
PatternSyntax
left;
9346
internal readonly
PatternSyntax
right;
9348
internal BinaryPatternSyntax(SyntaxKind kind,
PatternSyntax
left, SyntaxToken operatorToken,
PatternSyntax
right, DiagnosticInfo[]? diagnostics, SyntaxAnnotation[]? annotations)
9360
internal BinaryPatternSyntax(SyntaxKind kind,
PatternSyntax
left, SyntaxToken operatorToken,
PatternSyntax
right, SyntaxFactoryContext context)
9373
internal BinaryPatternSyntax(SyntaxKind kind,
PatternSyntax
left, SyntaxToken operatorToken,
PatternSyntax
right)
9385
public
PatternSyntax
Left => this.left;
9387
public
PatternSyntax
Right => this.right;
9403
public BinaryPatternSyntax Update(
PatternSyntax
left, SyntaxToken operatorToken,
PatternSyntax
right)
9430
internal readonly
PatternSyntax
pattern;
9432
internal UnaryPatternSyntax(SyntaxKind kind, SyntaxToken operatorToken,
PatternSyntax
pattern, DiagnosticInfo[]? diagnostics, SyntaxAnnotation[]? annotations)
9442
internal UnaryPatternSyntax(SyntaxKind kind, SyntaxToken operatorToken,
PatternSyntax
pattern, SyntaxFactoryContext context)
9453
internal UnaryPatternSyntax(SyntaxKind kind, SyntaxToken operatorToken,
PatternSyntax
pattern)
9464
public
PatternSyntax
Pattern => this.pattern;
9479
public UnaryPatternSyntax Update(SyntaxToken operatorToken,
PatternSyntax
pattern)
9572
public CoreSyntax.SeparatedSyntaxList<
PatternSyntax
> Patterns => new CoreSyntax.SeparatedSyntaxList<
PatternSyntax
>(new CoreSyntax.SyntaxList<CSharpSyntaxNode>(this.patterns));
9591
public ListPatternSyntax Update(SyntaxToken openBracketToken, CoreSyntax.SeparatedSyntaxList<
PatternSyntax
> patterns, SyntaxToken closeBracketToken, VariableDesignationSyntax designation)
9618
internal readonly
PatternSyntax
? pattern;
9620
internal SlicePatternSyntax(SyntaxKind kind, SyntaxToken dotDotToken,
PatternSyntax
? pattern, DiagnosticInfo[]? diagnostics, SyntaxAnnotation[]? annotations)
9633
internal SlicePatternSyntax(SyntaxKind kind, SyntaxToken dotDotToken,
PatternSyntax
? pattern, SyntaxFactoryContext context)
9647
internal SlicePatternSyntax(SyntaxKind kind, SyntaxToken dotDotToken,
PatternSyntax
? pattern)
9661
public
PatternSyntax
? Pattern => this.pattern;
9676
public SlicePatternSyntax Update(SyntaxToken dotDotToken,
PatternSyntax
pattern)
14118
internal readonly
PatternSyntax
pattern;
14122
internal CasePatternSwitchLabelSyntax(SyntaxKind kind, SyntaxToken keyword,
PatternSyntax
pattern, WhenClauseSyntax? whenClause, SyntaxToken colonToken, DiagnosticInfo[]? diagnostics, SyntaxAnnotation[]? annotations)
14139
internal CasePatternSwitchLabelSyntax(SyntaxKind kind, SyntaxToken keyword,
PatternSyntax
pattern, WhenClauseSyntax? whenClause, SyntaxToken colonToken, SyntaxFactoryContext context)
14157
internal CasePatternSwitchLabelSyntax(SyntaxKind kind, SyntaxToken keyword,
PatternSyntax
pattern, WhenClauseSyntax? whenClause, SyntaxToken colonToken)
14179
public
PatternSyntax
Pattern => this.pattern;
14198
public CasePatternSwitchLabelSyntax Update(SyntaxToken keyword,
PatternSyntax
pattern, WhenClauseSyntax whenClause, SyntaxToken colonToken)
14504
internal readonly
PatternSyntax
pattern;
14509
internal SwitchExpressionArmSyntax(SyntaxKind kind,
PatternSyntax
pattern, WhenClauseSyntax? whenClause, SyntaxToken equalsGreaterThanToken, ExpressionSyntax expression, DiagnosticInfo[]? diagnostics, SyntaxAnnotation[]? annotations)
14526
internal SwitchExpressionArmSyntax(SyntaxKind kind,
PatternSyntax
pattern, WhenClauseSyntax? whenClause, SyntaxToken equalsGreaterThanToken, ExpressionSyntax expression, SyntaxFactoryContext context)
14544
internal SwitchExpressionArmSyntax(SyntaxKind kind,
PatternSyntax
pattern, WhenClauseSyntax? whenClause, SyntaxToken equalsGreaterThanToken, ExpressionSyntax expression)
14561
public
PatternSyntax
Pattern => this.pattern;
14581
public SwitchExpressionArmSyntax Update(
PatternSyntax
pattern, WhenClauseSyntax whenClause, SyntaxToken equalsGreaterThanToken, ExpressionSyntax expression)
28186
=> node.Update((ExpressionSyntax)Visit(node.Expression), (SyntaxToken)Visit(node.IsKeyword), (
PatternSyntax
)Visit(node.Pattern));
28213
=> node.Update((BaseExpressionColonSyntax)Visit(node.ExpressionColon), (
PatternSyntax
)Visit(node.Pattern));
28219
=> node.Update((SyntaxToken)Visit(node.OpenParenToken), (
PatternSyntax
)Visit(node.Pattern), (SyntaxToken)Visit(node.CloseParenToken));
28228
=> node.Update((
PatternSyntax
)Visit(node.Left), (SyntaxToken)Visit(node.OperatorToken), (
PatternSyntax
)Visit(node.Right));
28231
=> node.Update((SyntaxToken)Visit(node.OperatorToken), (
PatternSyntax
)Visit(node.Pattern));
28237
=> node.Update((SyntaxToken)Visit(node.DotDotToken), (
PatternSyntax
)Visit(node.Pattern));
28351
=> node.Update((SyntaxToken)Visit(node.Keyword), (
PatternSyntax
)Visit(node.Pattern), (WhenClauseSyntax)Visit(node.WhenClause), (SyntaxToken)Visit(node.ColonToken));
28363
=> node.Update((
PatternSyntax
)Visit(node.Pattern), (WhenClauseSyntax)Visit(node.WhenClause), (SyntaxToken)Visit(node.EqualsGreaterThanToken), (ExpressionSyntax)Visit(node.Expression));
30621
public IsPatternExpressionSyntax IsPatternExpression(ExpressionSyntax expression, SyntaxToken isKeyword,
PatternSyntax
pattern)
30798
public SubpatternSyntax Subpattern(BaseExpressionColonSyntax? expressionColon,
PatternSyntax
pattern)
30836
public ParenthesizedPatternSyntax ParenthesizedPattern(SyntaxToken openParenToken,
PatternSyntax
pattern, SyntaxToken closeParenToken)
30908
public BinaryPatternSyntax BinaryPattern(SyntaxKind kind,
PatternSyntax
left, SyntaxToken operatorToken,
PatternSyntax
right)
30941
public UnaryPatternSyntax UnaryPattern(SyntaxToken operatorToken,
PatternSyntax
pattern)
30962
public ListPatternSyntax ListPattern(SyntaxToken openBracketToken, CoreSyntax.SeparatedSyntaxList<
PatternSyntax
> patterns, SyntaxToken closeBracketToken, VariableDesignationSyntax? designation)
30974
public SlicePatternSyntax SlicePattern(SyntaxToken dotDotToken,
PatternSyntax
? pattern)
31737
public CasePatternSwitchLabelSyntax CasePatternSwitchLabel(SyntaxToken keyword,
PatternSyntax
pattern, WhenClauseSyntax? whenClause, SyntaxToken colonToken)
31807
public SwitchExpressionArmSyntax SwitchExpressionArm(
PatternSyntax
pattern, WhenClauseSyntax? whenClause, SyntaxToken equalsGreaterThanToken, ExpressionSyntax expression)
36043
public static IsPatternExpressionSyntax IsPatternExpression(ExpressionSyntax expression, SyntaxToken isKeyword,
PatternSyntax
pattern)
36220
public static SubpatternSyntax Subpattern(BaseExpressionColonSyntax? expressionColon,
PatternSyntax
pattern)
36258
public static ParenthesizedPatternSyntax ParenthesizedPattern(SyntaxToken openParenToken,
PatternSyntax
pattern, SyntaxToken closeParenToken)
36330
public static BinaryPatternSyntax BinaryPattern(SyntaxKind kind,
PatternSyntax
left, SyntaxToken operatorToken,
PatternSyntax
right)
36363
public static UnaryPatternSyntax UnaryPattern(SyntaxToken operatorToken,
PatternSyntax
pattern)
36384
public static ListPatternSyntax ListPattern(SyntaxToken openBracketToken, CoreSyntax.SeparatedSyntaxList<
PatternSyntax
> patterns, SyntaxToken closeBracketToken, VariableDesignationSyntax? designation)
36396
public static SlicePatternSyntax SlicePattern(SyntaxToken dotDotToken,
PatternSyntax
? pattern)
37159
public static CasePatternSwitchLabelSyntax CasePatternSwitchLabel(SyntaxToken keyword,
PatternSyntax
pattern, WhenClauseSyntax? whenClause, SyntaxToken colonToken)
37229
public static SwitchExpressionArmSyntax SwitchExpressionArm(
PatternSyntax
pattern, WhenClauseSyntax? whenClause, SyntaxToken equalsGreaterThanToken, ExpressionSyntax expression)
Parser\LanguageParser_Patterns.cs (15)
23
var
pattern = ParsePattern(GetPrecedence(SyntaxKind.IsPatternExpression), afterIs: true);
53
private
PatternSyntax
ParsePattern(Precedence precedence, bool afterIs = false, bool inSwitchArmPattern = false)
58
private
PatternSyntax
ParseDisjunctivePattern(Precedence precedence, bool afterIs, bool inSwitchArmPattern)
60
PatternSyntax
result = ParseConjunctivePattern(precedence, afterIs, inSwitchArmPattern);
104
private
PatternSyntax
ParseConjunctivePattern(Precedence precedence, bool afterIs, bool inSwitchArmPattern)
106
PatternSyntax
result = ParseNegatedPattern(precedence, afterIs, inSwitchArmPattern);
158
private
PatternSyntax
ParseNegatedPattern(Precedence precedence, bool afterIs, bool inSwitchArmPattern)
187
private
PatternSyntax
ParsePrimaryPattern(Precedence precedence, bool afterIs, bool inSwitchArmPattern)
245
var
pattern = ParsePatternContinued(type, precedence, inSwitchArmPattern);
284
private
PatternSyntax
? ParsePatternContinued(TypeSyntax? type, Precedence precedence, bool inSwitchArmPattern)
330
var
subpattern = firstSubPattern.Pattern;
463
var
pattern = ParsePattern(Precedence.Conditional, inSwitchArmPattern: true);
468
private CSharpSyntaxNode ConvertPatternToExpressionIfPossible(
PatternSyntax
pattern, bool permitTypeArguments = false)
532
PatternSyntax
pattern = ParsePattern(Precedence.Conditional);
621
var
pattern = ParsePattern(Precedence.Coalescing, inSwitchArmPattern: true);
Parser\LanguageParser.cs (2)
10333
if (node is
PatternSyntax
pat)
12000
PatternSyntax
pattern => _syntaxFactory.IsPatternExpression(leftOperand, opToken, pattern),