Skip to content

Commit 37aed11

Browse files
committed
FavourStaticEmptyFields: fix rule
1 parent 70c027d commit 37aed11

File tree

1 file changed

+17
-1
lines changed

1 file changed

+17
-1
lines changed

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

Lines changed: 17 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -42,14 +42,30 @@ let rec private processExpression (args: AstNodeRuleParams) (expression: SynExpr
4242
match expression with
4343
| SynExpr.Const(SynConst.String ("", _, range), _) ->
4444
generateError args.FileContent range EmptyStringLiteral
45-
| SynExpr.ArrayOrList (isArray, [], range) ->
45+
| SynExpr.DotIndexedGet(_, indexArgs, _ , _) ->
46+
processExpression args indexArgs
47+
| SynExpr.DotIndexedSet(_, indexArgs, _ , _, _, _) ->
48+
processExpression args indexArgs
49+
| SynExpr.Paren(expr, _, _, _) ->
50+
processExpression args expr
51+
| SynExpr.Tuple(_, expressions, _, _) ->
52+
expressions
53+
|> List.map (processExpression args)
54+
|> Array.concat
55+
| SynExpr.ArrayOrList(isArray, [], range) ->
4656
let emptyLiteralType =
4757
if isArray then EmptyArrayLiteral else EmptyListLiteral
4858
generateError args.FileContent range emptyLiteralType
59+
| SynExpr.ArrayOrListComputed(_, expr, _) ->
60+
processExpression args expr
4961
| SynExpr.App(_, _, funcExpr, argExpr, _) ->
5062
Array.append
5163
(processExpression args funcExpr)
5264
(processExpression args argExpr)
65+
| SynExpr.AnonRecd(_, _, recordFields, _, _) ->
66+
recordFields
67+
|> List.map (fun (_, _, expr) -> processExpression args expr)
68+
|> Array.concat
5369
| SynExpr.Record(_, _, synExprRecordFields, _) ->
5470
let mapping =
5571
function

0 commit comments

Comments
 (0)