提交 838c7194 编写于 作者: Š Šimon Koníček

Making IsConstantExpressionContext use IsPatternContext

上级 aa7db3da
......@@ -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) &&
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册