From 838c7194e9e23ff79da885ddc770f6ebbb666975 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C5=A0imon=20Kon=C3=AD=C4=8Dek?= Date: Sat, 3 Mar 2018 17:24:55 +0100 Subject: [PATCH] Making IsConstantExpressionContext use IsPatternContext --- .../ContextQuery/SyntaxTreeExtensions.cs | 16 ++++------------ 1 file changed, 4 insertions(+), 12 deletions(-) diff --git a/src/Workspaces/CSharp/Portable/Extensions/ContextQuery/SyntaxTreeExtensions.cs b/src/Workspaces/CSharp/Portable/Extensions/ContextQuery/SyntaxTreeExtensions.cs index 8b0c35d77da..3a374b4a2b3 100644 --- a/src/Workspaces/CSharp/Portable/Extensions/ContextQuery/SyntaxTreeExtensions.cs +++ b/src/Workspaces/CSharp/Portable/Extensions/ContextQuery/SyntaxTreeExtensions.cs @@ -1796,23 +1796,15 @@ public static bool IsDefiniteCastTypeContext(this SyntaxTree syntaxTree, int pos return false; } - public static bool IsConstantExpressionContext(this SyntaxTree syntaxTree, int position, SyntaxToken tokenOnLeftOfPosition, CancellationToken cancellationToken) + public static bool IsConstantExpressionContext(this SyntaxTree syntaxTree, int position, + SyntaxToken tokenOnLeftOfPosition, CancellationToken cancellationToken) { - var token = tokenOnLeftOfPosition.GetPreviousTokenIfTouchingWord(position); - - // is | - if (token.IsKind(SyntaxKind.IsKeyword) && - token.Parent.IsKind(SyntaxKind.IsExpression, SyntaxKind.IsPatternExpression)) + if (IsPatternContext(syntaxTree, tokenOnLeftOfPosition, position)) { return true; } - // case | - if (token.IsKind(SyntaxKind.CaseKeyword) && - token.Parent.IsKind(SyntaxKind.CaseSwitchLabel, SyntaxKind.CasePatternSwitchLabel)) - { - return true; - } + var token = tokenOnLeftOfPosition.GetPreviousTokenIfTouchingWord(position); // goto case | if (token.IsKind(SyntaxKind.CaseKeyword) && -- GitLab