Skip to content

Commit 5809c70

Browse files
committed
Tweaks to Trivia::findNodeWhereRangeFitsIn
- Use Array.tryPick rather than Array.choose |> Array.tryHead - Use Option.orElseWith rather than 'Some betterChild -> Some betterChild'
1 parent 294ef06 commit 5809c70

File tree

1 file changed

+3
-5
lines changed

1 file changed

+3
-5
lines changed

src/Fantomas.Core/Trivia.fs

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -158,12 +158,10 @@ let rec findNodeWhereRangeFitsIn (root: Node) (range: range) : Node option =
158158
// The more specific the node fits the selection, the better
159159
let betterChildNode =
160160
root.Children
161-
|> Array.choose (fun childNode -> findNodeWhereRangeFitsIn childNode range)
162-
|> Array.tryHead
161+
|> Array.tryPick (fun childNode -> findNodeWhereRangeFitsIn childNode range)
163162

164-
match betterChildNode with
165-
| Some betterChild -> Some betterChild
166-
| None -> Some root
163+
betterChildNode
164+
|> Option.orElseWith (fun () -> Some root)
167165

168166
let triviaBeforeOrAfterEntireTree (rootNode: Node) (trivia: TriviaNode) : unit =
169167
let isBefore = trivia.Range.EndLine < rootNode.Range.StartLine

0 commit comments

Comments
 (0)