1 instantiation of ConstantPatternSyntax
Microsoft.CodeAnalysis.CSharp (1)
_generated\1\Syntax.xml.Internal.Generated.cs (1)
8988
internal override SyntaxNode CreateRed(SyntaxNode? parent, int position) => new CSharp.Syntax.
ConstantPatternSyntax
(this, parent, position);
73 references to ConstantPatternSyntax
Microsoft.CodeAnalysis.CSharp (11)
_generated\0\Syntax.xml.Main.Generated.cs (5)
308
public virtual TResult? VisitConstantPattern(
ConstantPatternSyntax
node) => this.DefaultVisit(node);
1056
public virtual void VisitConstantPattern(
ConstantPatternSyntax
node) => this.DefaultVisit(node);
1803
public override SyntaxNode? VisitConstantPattern(
ConstantPatternSyntax
node)
3813
public static
ConstantPatternSyntax
ConstantPattern(ExpressionSyntax expression)
3816
return (
ConstantPatternSyntax
)Syntax.InternalSyntax.SyntaxFactory.ConstantPattern((Syntax.InternalSyntax.ExpressionSyntax)expression.Green).CreateRed();
_generated\2\Syntax.xml.Syntax.Generated.cs (3)
5640
public
ConstantPatternSyntax
Update(ExpressionSyntax expression)
5644
var
newNode = SyntaxFactory.ConstantPattern(expression);
5652
public
ConstantPatternSyntax
WithExpression(ExpressionSyntax expression) => Update(expression);
Binder\Binder_Patterns.cs (2)
376
ConstantPatternSyntax
p => BindConstantPatternWithFallbackToTypePattern(p, ref unionType, inputType, hasErrors, diagnostics, hasUnionMatching: out hasUnionMatching),
629
ConstantPatternSyntax
node,
Binder\SwitchBinder_Patterns.cs (1)
286
if (matchLabelSyntax.Pattern is
ConstantPatternSyntax
p)
Microsoft.CodeAnalysis.CSharp.CodeStyle (18)
src\roslyn\src\Analyzers\CSharp\Analyzers\AddRequiredParentheses\CSharpAddRequiredExpressionParenthesesDiagnosticAnalyzer.cs (6)
55
node is IsPatternExpressionSyntax { Pattern:
ConstantPatternSyntax
} ||
57
node is IsPatternExpressionSyntax { Pattern: UnaryPatternSyntax { Pattern:
ConstantPatternSyntax
} };
65
IsPatternExpressionSyntax { Pattern:
ConstantPatternSyntax
constantPattern } isPatternExpression => (isPatternExpression.Expression, isPatternExpression.IsKeyword, constantPattern.Expression),
66
IsPatternExpressionSyntax { Pattern: UnaryPatternSyntax { Pattern:
ConstantPatternSyntax
constantPattern } } isPatternExpression => (isPatternExpression.Expression, isPatternExpression.IsKeyword, constantPattern.Expression),
75
ConstantPatternSyntax
{ Parent: ExpressionSyntax expression } => expression,
76
ConstantPatternSyntax
{ Parent: UnaryPatternSyntax { Parent: ExpressionSyntax expression } } => expression,
src\roslyn\src\Analyzers\CSharp\Analyzers\RemoveUnnecessaryParentheses\CSharpRemoveUnnecessaryExpressionParenthesesDiagnosticAnalyzer.cs (1)
82
case
ConstantPatternSyntax
{ Parent: IsPatternExpressionSyntax isPatternExpression }:
src\roslyn\src\Analyzers\CSharp\Analyzers\UseCoalesceExpression\CSharpUseCoalesceExpressionForIfNullStatementCheckDiagnosticAnalyzer.cs (1)
47
else if (condition is IsPatternExpressionSyntax { Pattern:
ConstantPatternSyntax
{ Expression: LiteralExpressionSyntax(SyntaxKind.NullLiteralExpression) } } isPattern)
src\roslyn\src\Analyzers\CSharp\Analyzers\UseCompoundAssignment\CSharpUseCompoundCoalesceAssignmentDiagnosticAnalyzer.cs (1)
188
else if (condition is IsPatternExpressionSyntax { Pattern:
ConstantPatternSyntax
{ Expression: LiteralExpressionSyntax(SyntaxKind.NullLiteralExpression) } } isPattern)
src\roslyn\src\Analyzers\CSharp\Analyzers\UseNullPropagation\CSharpUseNullPropagationDiagnosticAnalyzer.cs (1)
59
if (pattern is not
ConstantPatternSyntax
constantPattern)
src\roslyn\src\Analyzers\CSharp\Analyzers\UsePatternCombinators\CSharpUsePatternCombinatorsDiagnosticAnalyzer.cs (1)
140
Not { Pattern: Source { PatternSyntax:
ConstantPatternSyntax
} } => true,
src\roslyn\src\Analyzers\CSharp\Analyzers\UsePatternMatching\CSharpAsAndMemberAccessDiagnosticAnalyzer.cs (2)
136
if (isPatternExpression.Pattern is
ConstantPatternSyntax
{ Expression: var expression1 })
150
else if (isPatternExpression.Pattern is UnaryPatternSyntax { Pattern:
ConstantPatternSyntax
{ Expression: var expression2 } })
src\roslyn\src\Analyzers\CSharp\Analyzers\UsePatternMatching\CSharpAsAndNullCheckDiagnosticAnalyzer.cs (1)
351
if (right is
ConstantPatternSyntax
constantPattern
src\roslyn\src\Analyzers\CSharp\Analyzers\UsePatternMatching\CSharpUseNotPatternDiagnosticAnalyzer.cs (1)
75
IsPatternExpressionSyntax { Pattern: DeclarationPatternSyntax or
ConstantPatternSyntax
} isPattern
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Extensions\ParenthesizedExpressionSyntaxExtensions.cs (2)
368
if (node.Parent is not
ConstantPatternSyntax
{ Parent: IsPatternExpressionSyntax })
805
case
ConstantPatternSyntax
:
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Services\SyntaxFacts\CSharpSyntaxFacts.cs (1)
1375
=> ((
ConstantPatternSyntax
)node).Expression;
Microsoft.CodeAnalysis.CSharp.CodeStyle.Fixes (9)
src\roslyn\src\Analyzers\CSharp\CodeFixes\GenerateMethod\GenerateDeconstructMethodCodeFixProvider.cs (1)
93
if (deconstruction is PositionalPatternClauseSyntax positionalPatternClause && positionalPatternClause.Subpatterns.Any(p => p.Pattern is not
ConstantPatternSyntax
))
src\roslyn\src\Analyzers\CSharp\CodeFixes\GenerateParameterizedMember\CSharpGenerateDeconstructMethodService.cs (2)
45
semanticModel.GenerateNameForExpression(((
ConstantPatternSyntax
)sub.Pattern).Expression, capitalize: false, cancellationToken));
53
type: semanticModel.GetTypeInfo(((
ConstantPatternSyntax
)positionalPattern.Subpatterns[i].Pattern).Expression, cancellationToken).Type ?? semanticModel.Compilation.GetSpecialType(SpecialType.System_Object),
src\roslyn\src\Analyzers\CSharp\CodeFixes\UseIsNullCheck\CSharpUseIsNullCheckForReferenceEqualsCodeFixProvider.cs (1)
27
private static readonly
ConstantPatternSyntax
s_nullLiteralPattern
src\roslyn\src\Analyzers\CSharp\CodeFixes\UseIsNullCheck\CSharpUseNullCheckOverTypeCheckCodeFixProvider.cs (1)
26
private static readonly
ConstantPatternSyntax
s_nullConstantPattern = ConstantPattern(LiteralExpression(SyntaxKind.NullLiteralExpression));
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\Extensions\ContextQuery\SyntaxTreeExtensions.cs (1)
1507
if (patternSyntax is
ConstantPatternSyntax
{ Expression: CastExpressionSyntax { Expression: IdentifierNameSyntax } castExpression } &&
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\LanguageServices\CSharpTypeInferenceService.TypeInferrer.cs (3)
155
ConstantPatternSyntax
constantPattern => InferTypeInConstantPattern(constantPattern),
1531
ConstantPatternSyntax
constantPattern)
1612
ConstantPatternSyntax
constantPattern => GetTypes(constantPattern.Expression),
Microsoft.CodeAnalysis.CSharp.Features (21)
ConvertIfToSwitch\CSharpConvertIfToSwitchCodeRefactoringProvider.Rewriting.cs (1)
96
if (label.Pattern is AnalyzedPattern.Source { PatternSyntax:
ConstantPatternSyntax
{ Expression: LiteralExpressionSyntax literal } })
src\roslyn\src\Analyzers\CSharp\Analyzers\AddRequiredParentheses\CSharpAddRequiredExpressionParenthesesDiagnosticAnalyzer.cs (6)
55
node is IsPatternExpressionSyntax { Pattern:
ConstantPatternSyntax
} ||
57
node is IsPatternExpressionSyntax { Pattern: UnaryPatternSyntax { Pattern:
ConstantPatternSyntax
} };
65
IsPatternExpressionSyntax { Pattern:
ConstantPatternSyntax
constantPattern } isPatternExpression => (isPatternExpression.Expression, isPatternExpression.IsKeyword, constantPattern.Expression),
66
IsPatternExpressionSyntax { Pattern: UnaryPatternSyntax { Pattern:
ConstantPatternSyntax
constantPattern } } isPatternExpression => (isPatternExpression.Expression, isPatternExpression.IsKeyword, constantPattern.Expression),
75
ConstantPatternSyntax
{ Parent: ExpressionSyntax expression } => expression,
76
ConstantPatternSyntax
{ Parent: UnaryPatternSyntax { Parent: ExpressionSyntax expression } } => expression,
src\roslyn\src\Analyzers\CSharp\Analyzers\RemoveUnnecessaryParentheses\CSharpRemoveUnnecessaryExpressionParenthesesDiagnosticAnalyzer.cs (1)
82
case
ConstantPatternSyntax
{ Parent: IsPatternExpressionSyntax isPatternExpression }:
src\roslyn\src\Analyzers\CSharp\Analyzers\UseCoalesceExpression\CSharpUseCoalesceExpressionForIfNullStatementCheckDiagnosticAnalyzer.cs (1)
47
else if (condition is IsPatternExpressionSyntax { Pattern:
ConstantPatternSyntax
{ Expression: LiteralExpressionSyntax(SyntaxKind.NullLiteralExpression) } } isPattern)
src\roslyn\src\Analyzers\CSharp\Analyzers\UseCompoundAssignment\CSharpUseCompoundCoalesceAssignmentDiagnosticAnalyzer.cs (1)
188
else if (condition is IsPatternExpressionSyntax { Pattern:
ConstantPatternSyntax
{ Expression: LiteralExpressionSyntax(SyntaxKind.NullLiteralExpression) } } isPattern)
src\roslyn\src\Analyzers\CSharp\Analyzers\UseNullPropagation\CSharpUseNullPropagationDiagnosticAnalyzer.cs (1)
59
if (pattern is not
ConstantPatternSyntax
constantPattern)
src\roslyn\src\Analyzers\CSharp\Analyzers\UsePatternCombinators\CSharpUsePatternCombinatorsDiagnosticAnalyzer.cs (1)
140
Not { Pattern: Source { PatternSyntax:
ConstantPatternSyntax
} } => true,
src\roslyn\src\Analyzers\CSharp\Analyzers\UsePatternMatching\CSharpAsAndMemberAccessDiagnosticAnalyzer.cs (2)
136
if (isPatternExpression.Pattern is
ConstantPatternSyntax
{ Expression: var expression1 })
150
else if (isPatternExpression.Pattern is UnaryPatternSyntax { Pattern:
ConstantPatternSyntax
{ Expression: var expression2 } })
src\roslyn\src\Analyzers\CSharp\Analyzers\UsePatternMatching\CSharpAsAndNullCheckDiagnosticAnalyzer.cs (1)
351
if (right is
ConstantPatternSyntax
constantPattern
src\roslyn\src\Analyzers\CSharp\Analyzers\UsePatternMatching\CSharpUseNotPatternDiagnosticAnalyzer.cs (1)
75
IsPatternExpressionSyntax { Pattern: DeclarationPatternSyntax or
ConstantPatternSyntax
} isPattern
src\roslyn\src\Analyzers\CSharp\CodeFixes\GenerateMethod\GenerateDeconstructMethodCodeFixProvider.cs (1)
93
if (deconstruction is PositionalPatternClauseSyntax positionalPatternClause && positionalPatternClause.Subpatterns.Any(p => p.Pattern is not
ConstantPatternSyntax
))
src\roslyn\src\Analyzers\CSharp\CodeFixes\GenerateParameterizedMember\CSharpGenerateDeconstructMethodService.cs (2)
45
semanticModel.GenerateNameForExpression(((
ConstantPatternSyntax
)sub.Pattern).Expression, capitalize: false, cancellationToken));
53
type: semanticModel.GetTypeInfo(((
ConstantPatternSyntax
)positionalPattern.Subpatterns[i].Pattern).Expression, cancellationToken).Type ?? semanticModel.Compilation.GetSpecialType(SpecialType.System_Object),
src\roslyn\src\Analyzers\CSharp\CodeFixes\UseIsNullCheck\CSharpUseIsNullCheckForReferenceEqualsCodeFixProvider.cs (1)
27
private static readonly
ConstantPatternSyntax
s_nullLiteralPattern
src\roslyn\src\Analyzers\CSharp\CodeFixes\UseIsNullCheck\CSharpUseNullCheckOverTypeCheckCodeFixProvider.cs (1)
26
private static readonly
ConstantPatternSyntax
s_nullConstantPattern = ConstantPattern(LiteralExpression(SyntaxKind.NullLiteralExpression));
Microsoft.CodeAnalysis.CSharp.Workspaces (7)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Extensions\ParenthesizedExpressionSyntaxExtensions.cs (2)
368
if (node.Parent is not
ConstantPatternSyntax
{ Parent: IsPatternExpressionSyntax })
805
case
ConstantPatternSyntax
:
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Services\SyntaxFacts\CSharpSyntaxFacts.cs (1)
1375
=> ((
ConstantPatternSyntax
)node).Expression;
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\Extensions\ContextQuery\SyntaxTreeExtensions.cs (1)
1507
if (patternSyntax is
ConstantPatternSyntax
{ Expression: CastExpressionSyntax { Expression: IdentifierNameSyntax } castExpression } &&
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\LanguageServices\CSharpTypeInferenceService.TypeInferrer.cs (3)
155
ConstantPatternSyntax
constantPattern => InferTypeInConstantPattern(constantPattern),
1531
ConstantPatternSyntax
constantPattern)
1612
ConstantPatternSyntax
constantPattern => GetTypes(constantPattern.Expression),
Roslyn.Diagnostics.CSharp.Analyzers (7)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Extensions\ParenthesizedExpressionSyntaxExtensions.cs (2)
368
if (node.Parent is not
ConstantPatternSyntax
{ Parent: IsPatternExpressionSyntax })
805
case
ConstantPatternSyntax
:
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Services\SyntaxFacts\CSharpSyntaxFacts.cs (1)
1375
=> ((
ConstantPatternSyntax
)node).Expression;
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\Extensions\ContextQuery\SyntaxTreeExtensions.cs (1)
1507
if (patternSyntax is
ConstantPatternSyntax
{ Expression: CastExpressionSyntax { Expression: IdentifierNameSyntax } castExpression } &&
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\LanguageServices\CSharpTypeInferenceService.TypeInferrer.cs (3)
155
ConstantPatternSyntax
constantPattern => InferTypeInConstantPattern(constantPattern),
1531
ConstantPatternSyntax
constantPattern)
1612
ConstantPatternSyntax
constantPattern => GetTypes(constantPattern.Expression),