Skip to content

Commit f78d63e

Browse files
committed
AvoidSinglePipeOperator: apply fix
1 parent 98cb562 commit f78d63e

File tree

1 file changed

+23
-18
lines changed

1 file changed

+23
-18
lines changed

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

Lines changed: 23 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -16,30 +16,35 @@ let runner (args: AstNodeRuleParams) =
1616
SuggestedFix = None
1717
TypeChecks = List.Empty
1818
} |> Array.singleton
19+
20+
let checkExpr (expr: SynExpr) =
21+
match expr with
22+
| SynExpr.App(_exprAtomicFlag, _isInfix, funcExpr, argExpr, _range) ->
23+
match funcExpr with
24+
| ExpressionUtilities.Identifier([ ident ], _) ->
25+
if ident.idText = "op_PipeRight" then
26+
match argExpr with
27+
| SynExpr.App(_exprAtomicFlag, _isInfix, _funcExpr, _argExpr, _range) ->
28+
Array.empty
29+
| SynExpr.IfThenElse _ ->
30+
Array.empty
31+
| _ ->
32+
errors ident.idRange
33+
else
34+
Array.empty
35+
| _ ->
36+
Array.empty
37+
| _ ->
38+
Array.empty
1939

2040
let error =
2141
match args.AstNode with
2242
| AstNode.Binding (SynBinding(_synAcc, _synBinding, _mustInline, _isMut, _synAttribs, _preXmlDoc, _synValData, _headPat, _synBindingRet, synExpr, _range, _debugPointAtBinding, _)) ->
2343
match synExpr with
2444
| SynExpr.App(_exprAtomicFlag, _isInfix, funcExpr, _argExpr, _range) ->
25-
match funcExpr with
26-
| SynExpr.App(_exprAtomicFlag, _isInfix, funcExpr, argExpr, _range) ->
27-
match funcExpr with
28-
| ExpressionUtilities.Identifier([ ident ], _) ->
29-
if ident.idText = "op_PipeRight" then
30-
match argExpr with
31-
| SynExpr.App(_exprAtomicFlag, _isInfix, _funcExpr, _argExpr, _range) ->
32-
Array.empty
33-
| SynExpr.IfThenElse _ ->
34-
Array.empty
35-
| _ ->
36-
errors ident.idRange
37-
else
38-
Array.empty
39-
| _ ->
40-
Array.empty
41-
| _ ->
42-
Array.empty
45+
checkExpr funcExpr
46+
| SynExpr.IfThenElse(_, SynExpr.App(_exprAtomicFlag, _isInfix, funcExpr, _argExpr, _range), _, _, _, _, _) ->
47+
checkExpr funcExpr
4348
| _ ->
4449
Array.empty
4550
| _ ->

0 commit comments

Comments
 (0)