Skip to content

Commit a8fe750

Browse files
committed
reduce diff
1 parent 95f5778 commit a8fe750

File tree

2 files changed

+9
-18
lines changed

2 files changed

+9
-18
lines changed

src/Compiler/Checking/CheckRecordSyntaxHelpers.fs

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -108,8 +108,7 @@ let TransformAstForNestedUpdates
108108

109109
match withExpr with
110110
| SynExpr.Ident origId, (blockSep: BlockSeparator) ->
111-
let sepRange = blockSep.Range
112-
let lid, rng = upToId sepRange id (origId :: ids)
111+
let lid, rng = upToId blockSep.Range id (origId :: ids)
113112
// We need a neutral, “offside” separator for the AST that does not claim there was a concrete token like a semicolon or a comma
114113
Some(
115114
SynExpr.LongIdent(false, LongIdentWithDots(lid, rng), None, totalRange origId id),

src/Compiler/Service/ServiceParseTreeWalk.fs

Lines changed: 8 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -448,11 +448,9 @@ module SyntaxTraversal =
448448
| Some(expr, blockSep) ->
449449
yield dive expr expr.Range traverseSynExpr
450450

451-
let withRange = blockSep.Range
452-
453451
yield
454-
dive () withRange (fun () ->
455-
if posGeq pos withRange.End then
452+
dive () blockSep.Range (fun () ->
453+
if posGeq pos blockSep.Range.End then
456454
// special case: caret is after WITH
457455
// { x with $ }
458456
visitor.VisitRecordField(path, Some expr, None)
@@ -501,28 +499,24 @@ module SyntaxTraversal =
501499

502500
match sepOpt with
503501
| Some sep ->
504-
let scPosOpt = sep.Position
505-
let sepRange = sep.Range
506502

507503
yield
508-
dive () sepRange (fun () ->
504+
dive () sep.Range (fun () ->
509505
// special case: caret is below 'inherit' + one or more fields are already defined
510506
// inherit A()
511507
// $
512508
// field1 = 5
513-
diveIntoSeparator inheritRange.StartColumn scPosOpt None)
509+
diveIntoSeparator inheritRange.StartColumn sep.Position None)
514510
| None -> ()
515511
| _ -> ()
516512

517513
match copyOpt with
518514
| Some(expr, blockSep) ->
519515
yield dive expr expr.Range traverseSynExpr
520516

521-
let withRange = blockSep.Range
522-
523517
yield
524-
dive () withRange (fun () ->
525-
if posGeq pos withRange.End then
518+
dive () blockSep.Range (fun () ->
519+
if posGeq pos blockSep.Range.End then
526520
// special case: caret is after WITH
527521
// { x with $ }
528522
visitor.VisitRecordField(path, Some expr, None)
@@ -564,16 +558,14 @@ module SyntaxTraversal =
564558

565559
match sepOpt with
566560
| Some sep ->
567-
let scPosOpt = sep.Position
568-
let sepRange = sep.Range
569561

570562
yield
571-
dive () sepRange (fun () ->
563+
dive () sep.Range (fun () ->
572564
// special case: caret is between field bindings
573565
// field1 = 5
574566
// $
575567
// field2 = 5
576-
diveIntoSeparator offsideColumn scPosOpt copyOpt)
568+
diveIntoSeparator offsideColumn sep.Position copyOpt)
577569
| _ -> ()
578570

579571
]

0 commit comments

Comments
 (0)