Skip to content

Commit 00dd0c4

Browse files
author
Kapil Borle
committed
Check keywords for open paren violation
1 parent 5e534b6 commit 00dd0c4

File tree

1 file changed

+22
-12
lines changed

1 file changed

+22
-12
lines changed

Rules/UseWhitespace.cs

Lines changed: 22 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -129,18 +129,11 @@ private IEnumerable<DiagnosticRecord> FindOpenParenViolations(TokenOperations to
129129
{
130130
foreach (var lparen in tokenOperations.GetTokenNodes(TokenKind.LParen))
131131
{
132-
if (lparen.Previous == null
133-
|| !IsPreviousTokenOnSameLine(lparen)
134-
|| lparen.Previous.Value.Kind == TokenKind.LParen // if nested paren
135-
|| lparen.Previous.Value.Kind == TokenKind.Param // if param block
136-
|| (lparen.Previous.Previous != null
137-
&& lparen.Previous.Previous.Value.Kind == TokenKind.Function)) //if function block
138-
139-
{
140-
continue;
141-
}
142-
143-
if (!IsPreviousTokenApartByWhitespace(lparen))
132+
if (lparen.Previous != null
133+
&& IsPreviousTokenOnSameLine(lparen)
134+
&& TokenTraits.HasTrait(lparen.Previous.Value.Kind, TokenFlags.Keyword)
135+
&& IsKeyword(lparen.Previous.Value)
136+
&& !IsPreviousTokenApartByWhitespace(lparen))
144137
{
145138
yield return new DiagnosticRecord(
146139
GetError(ErrorKind.Paren),
@@ -154,6 +147,23 @@ private IEnumerable<DiagnosticRecord> FindOpenParenViolations(TokenOperations to
154147
}
155148
}
156149

150+
private bool IsKeyword(Token token)
151+
{
152+
switch (token.Kind)
153+
{
154+
case TokenKind.If:
155+
case TokenKind.ElseIf:
156+
case TokenKind.Switch:
157+
case TokenKind.For:
158+
case TokenKind.Foreach:
159+
case TokenKind.While:
160+
return true;
161+
162+
default:
163+
return false;
164+
}
165+
}
166+
157167
private IEnumerable<CorrectionExtent> GetOpenBracketCorrections(Token token)
158168
{
159169
yield return new CorrectionExtent(

0 commit comments

Comments
 (0)