Skip to content

Commit 8d901af

Browse files
committed
FavourStaticEmptyFields: fix rule
1 parent 782e753 commit 8d901af

File tree

1 file changed

+16
-1
lines changed

1 file changed

+16
-1
lines changed

src/FSharpLint.Core/Rules/Conventions/FavourStaticEmptyFields.fs

Lines changed: 16 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -47,16 +47,31 @@ let rec private processExpressions (errorsSoFar: array<WarningDetails>) (args: A
4747
errorsSoFar
4848
(generateError args.FileContent range EmptyStringLiteral)
4949
processExpressions errors args tail
50-
| SynExpr.ArrayOrList (isArray, [], range) :: tail ->
50+
| SynExpr.DotIndexedGet(_, indexArgs, _ , _) :: tail ->
51+
processExpressions errorsSoFar args (indexArgs :: tail)
52+
| SynExpr.DotIndexedSet(_, indexArgs, _ , _, _, _) :: tail ->
53+
processExpressions errorsSoFar args (indexArgs :: tail)
54+
| SynExpr.Paren(expr, _, _, _) :: tail ->
55+
processExpressions errorsSoFar args (expr :: tail)
56+
| SynExpr.Tuple(_, expressions, _, _) :: tail ->
57+
processExpressions errorsSoFar args (List.append expressions tail)
58+
| SynExpr.ArrayOrList(isArray, [], range) :: tail ->
5159
let emptyLiteralType =
5260
if isArray then EmptyArrayLiteral else EmptyListLiteral
5361
let errors =
5462
Array.append
5563
errorsSoFar
5664
(generateError args.FileContent range emptyLiteralType)
5765
processExpressions errors args tail
66+
| SynExpr.ArrayOrListComputed(_, expr, _) :: tail ->
67+
processExpressions errorsSoFar args (expr :: tail)
5868
| SynExpr.App(_, _, funcExpr, argExpr, _) :: tail ->
5969
processExpressions errorsSoFar args (List.append [ funcExpr; argExpr ] tail)
70+
| SynExpr.AnonRecd(_, _, recordFields, _, _) :: tail ->
71+
let fieldExpressions =
72+
recordFields
73+
|> List.map (fun (_, _, expr) -> expr)
74+
processExpressions errorsSoFar args (List.append fieldExpressions tail)
6075
| SynExpr.Record(_, _, synExprRecordFields, _) :: tail ->
6176
let mapping =
6277
function

0 commit comments

Comments
 (0)