@@ -77,8 +77,8 @@ export function selectForwardSexp(doc: EditableDocument) {
77
77
const rangeFn =
78
78
selection . active >= selection . anchor
79
79
? forwardSexpRange
80
- : ( doc : EditableDocument ) => forwardSexpRange ( doc , selection . active , true ) ;
81
- return rangeFn ( doc , selection . start ) ;
80
+ : ( doc : EditableDocument ) => forwardSexpRange ( doc , [ selection . active ] , true ) ;
81
+ return rangeFn ( doc , [ selection . start ] ) [ 0 ] ;
82
82
} ) ;
83
83
selectRangeForward ( doc , ranges ) ;
84
84
}
@@ -88,8 +88,8 @@ export function selectRight(doc: EditableDocument) {
88
88
const ranges = doc . selections . map ( ( selection ) => {
89
89
const rangeFn =
90
90
selection . active >= selection . anchor
91
- ? ( doc ) => forwardHybridSexpRange ( doc , selection . end )
92
- : ( doc : EditableDocument ) => forwardHybridSexpRange ( doc , selection . active , true ) ;
91
+ ? ( doc ) => forwardHybridSexpRange ( doc , [ selection . end ] ) [ 0 ]
92
+ : ( doc : EditableDocument ) => forwardHybridSexpRange ( doc , [ selection . active ] , true ) [ 0 ] ;
93
93
return rangeFn ( doc ) ;
94
94
} ) ;
95
95
selectRangeForward ( doc , ranges ) ;
@@ -99,8 +99,8 @@ export function selectForwardSexpOrUp(doc: EditableDocument) {
99
99
const ranges = doc . selections . map ( ( selection ) => {
100
100
const rangeFn =
101
101
selection . active >= selection . anchor
102
- ? ( doc ) => forwardSexpOrUpRange ( doc , selection . end )
103
- : ( doc : EditableDocument ) => forwardSexpOrUpRange ( doc , selection . active , true ) ;
102
+ ? ( doc ) => forwardSexpOrUpRange ( doc , [ selection . end ] ) [ 0 ]
103
+ : ( doc : EditableDocument ) => forwardSexpOrUpRange ( doc , [ selection . active ] , true ) [ 0 ] ;
104
104
return rangeFn ( doc ) ;
105
105
} ) ;
106
106
selectRangeForward ( doc , ranges ) ;
@@ -111,8 +111,8 @@ export function selectBackwardSexp(doc: EditableDocument) {
111
111
const rangeFn =
112
112
selection . active <= selection . anchor
113
113
? backwardSexpRange
114
- : ( doc : EditableDocument ) => backwardSexpRange ( doc , selection . active , false ) ;
115
- return rangeFn ( doc , selection . start ) ;
114
+ : ( doc : EditableDocument ) => backwardSexpRange ( doc , [ selection . active ] , false ) ;
115
+ return rangeFn ( doc , [ selection . start ] ) [ 0 ] ;
116
116
} ) ;
117
117
selectRangeBackward ( doc , ranges ) ;
118
118
}
@@ -157,9 +157,9 @@ export function selectBackwardSexpOrUp(doc: EditableDocument) {
157
157
const ranges = doc . selections . map ( ( selection ) => {
158
158
const rangeFn =
159
159
selection . active <= selection . anchor
160
- ? ( doc : EditableDocument ) => backwardSexpOrUpRange ( doc , selection . active , false )
161
- : ( doc : EditableDocument ) => backwardSexpOrUpRange ( doc , selection . active , false ) ;
162
- return rangeFn ( doc ) ;
160
+ ? ( doc : EditableDocument ) => backwardSexpOrUpRange ( doc , [ selection . active ] , false )
161
+ : ( doc : EditableDocument ) => backwardSexpOrUpRange ( doc , [ selection . active ] , false ) ;
162
+ return rangeFn ( doc ) [ 0 ] ;
163
163
} ) ;
164
164
selectRangeBackward ( doc , ranges ) ;
165
165
}
@@ -285,42 +285,18 @@ function _backwardSexpRange(
285
285
286
286
export function forwardSexpRange (
287
287
doc : EditableDocument ,
288
- offsets ?: number [ ] ,
289
- goPastWhitespace ?: boolean
290
- ) : Array < [ number , number ] > ;
291
- export function forwardSexpRange (
292
- doc : EditableDocument ,
293
- offset ?: number ,
294
- goPastWhitespace ?: boolean
295
- ) : [ number , number ] ;
296
- export function forwardSexpRange (
297
- doc : EditableDocument ,
298
- oneOrMoreOffsets : number [ ] | number = doc . selections . map ( ( s ) => s . end ) ,
288
+ offsets : number [ ] = doc . selections . map ( ( s ) => s . end ) ,
299
289
goPastWhitespace = false
300
- ) : Array < [ number , number ] > | [ number , number ] {
301
- const offsets = Array . isArray ( oneOrMoreOffsets ) ? oneOrMoreOffsets : [ oneOrMoreOffsets ] ;
302
- const ranges = _forwardSexpRange ( doc , offsets , GoUpSexpOption . Never , goPastWhitespace ) ;
303
- return Array . isArray ( oneOrMoreOffsets ) ? ranges : ranges [ 0 ] ;
290
+ ) : Array < [ number , number ] > {
291
+ return _forwardSexpRange ( doc , offsets , GoUpSexpOption . Never , goPastWhitespace ) ;
304
292
}
305
293
306
294
export function backwardSexpRange (
307
295
doc : EditableDocument ,
308
- offsets ?: number [ ] ,
309
- goPastWhitespace ?: boolean
310
- ) : Array < [ number , number ] > ;
311
- export function backwardSexpRange (
312
- doc : EditableDocument ,
313
- offset ?: number ,
314
- goPastWhitespace ?: boolean
315
- ) : [ number , number ] ;
316
- export function backwardSexpRange (
317
- doc : EditableDocument ,
318
- oneOrMoreOffsets : number [ ] | number = doc . selections . map ( ( s ) => s . start ) ,
296
+ offsets : number [ ] = doc . selections . map ( ( s ) => s . start ) ,
319
297
goPastWhitespace = false
320
- ) : Array < [ number , number ] > | [ number , number ] {
321
- const offsets = Array . isArray ( oneOrMoreOffsets ) ? oneOrMoreOffsets : [ oneOrMoreOffsets ] ;
322
- const ranges = _backwardSexpRange ( doc , offsets , GoUpSexpOption . Never , goPastWhitespace ) ;
323
- return Array . isArray ( oneOrMoreOffsets ) ? ranges : ranges [ 0 ] ;
298
+ ) : Array < [ number , number ] > {
299
+ return _backwardSexpRange ( doc , offsets , GoUpSexpOption . Never , goPastWhitespace ) ;
324
300
}
325
301
326
302
export function forwardListRange (
@@ -355,29 +331,16 @@ export function backwardListRange(
355
331
* @param goPastWhitespace
356
332
* @returns [number, number]
357
333
*/
358
- export function forwardHybridSexpRange (
359
- doc : EditableDocument ,
360
- offsets ?: number [ ] ,
361
- goPastWhitespace ?: boolean
362
- ) : Array < [ number , number ] > ;
363
- export function forwardHybridSexpRange (
364
- doc : EditableDocument ,
365
- offset ?: number ,
366
- goPastWhitespace ?: boolean
367
- ) : [ number , number ] ;
334
+
368
335
export function forwardHybridSexpRange (
369
336
doc : EditableDocument ,
370
337
// offset = Math.max(doc.selections.anchor, doc.selections.active),
371
338
// offset?: number = doc.selections[0].end,
372
339
// selections: ModelEditSelection[] = doc.selections,
373
- offsets : number | number [ ] = doc . selections . map ( ( s ) => s . end ) ,
340
+ offsets : number [ ] = doc . selections . map ( ( s ) => s . end ) ,
374
341
goPastWhitespace = false
375
- ) : [ number , number ] | Array < [ number , number ] > {
376
- if ( isNumber ( offsets ) ) {
377
- offsets = [ offsets ] ;
378
- }
379
-
380
- const ranges = offsets . map < [ number , number ] > ( ( offset ) => {
342
+ ) : Array < [ number , number ] > {
343
+ return offsets . map < [ number , number ] > ( ( offset ) => {
381
344
// const { end: offset } = selection;
382
345
383
346
let cursor = doc . getTokenCursor ( offset ) ;
@@ -442,12 +405,6 @@ export function forwardHybridSexpRange(
442
405
}
443
406
return [ offset , end ] ;
444
407
} ) ;
445
-
446
- if ( isNumber ( offsets ) ) {
447
- return ranges [ 0 ] ;
448
- } else {
449
- return ranges ;
450
- }
451
408
}
452
409
453
410
export function rangeToForwardUpList (
@@ -470,42 +427,18 @@ export function rangeToBackwardUpList(
470
427
471
428
export function forwardSexpOrUpRange (
472
429
doc : EditableDocument ,
473
- offsets ?: number [ ] ,
474
- goPastWhitespace ?: boolean
475
- ) : Array < [ number , number ] > ;
476
- export function forwardSexpOrUpRange (
477
- doc : EditableDocument ,
478
- offset ?: number ,
479
- goPastWhitespace ?: boolean
480
- ) : [ number , number ] ;
481
- export function forwardSexpOrUpRange (
482
- doc : EditableDocument ,
483
- oneOrMoreOffsets : number [ ] | number = doc . selections . map ( ( s ) => s . end ) ,
430
+ offsets : number [ ] = doc . selections . map ( ( s ) => s . end ) ,
484
431
goPastWhitespace = false
485
- ) : Array < [ number , number ] > | [ number , number ] {
486
- const offsets = isNumber ( oneOrMoreOffsets ) ? [ oneOrMoreOffsets ] : oneOrMoreOffsets ;
487
- const ranges = _forwardSexpRange ( doc , offsets , GoUpSexpOption . WhenAtLimit , goPastWhitespace ) ;
488
- return isNumber ( oneOrMoreOffsets ) ? ranges [ 0 ] : ranges ;
432
+ ) : Array < [ number , number ] > {
433
+ return _forwardSexpRange ( doc , offsets , GoUpSexpOption . WhenAtLimit , goPastWhitespace ) ;
489
434
}
490
435
491
436
export function backwardSexpOrUpRange (
492
437
doc : EditableDocument ,
493
- offsets ?: number [ ] ,
494
- goPastWhitespace ?: boolean
495
- ) : Array < [ number , number ] > ;
496
- export function backwardSexpOrUpRange (
497
- doc : EditableDocument ,
498
- offset ?: number ,
499
- goPastWhitespace ?: boolean
500
- ) : [ number , number ] ;
501
- export function backwardSexpOrUpRange (
502
- doc : EditableDocument ,
503
- oneOrMoreOffsets : number [ ] | number = doc . selections . map ( ( s ) => s . start ) ,
438
+ offsets : number [ ] = doc . selections . map ( ( s ) => s . start ) ,
504
439
goPastWhitespace = false
505
- ) : Array < [ number , number ] > | [ number , number ] {
506
- const offsets = isNumber ( oneOrMoreOffsets ) ? [ oneOrMoreOffsets ] : oneOrMoreOffsets ;
507
- const ranges = _backwardSexpRange ( doc , offsets , GoUpSexpOption . WhenAtLimit , goPastWhitespace ) ;
508
- return isNumber ( oneOrMoreOffsets ) ? ranges [ 0 ] : ranges ;
440
+ ) : Array < [ number , number ] > {
441
+ return _backwardSexpRange ( doc , offsets , GoUpSexpOption . WhenAtLimit , goPastWhitespace ) ;
509
442
}
510
443
511
444
export function rangeToForwardDownList (
0 commit comments