@@ -56,7 +56,12 @@ export class ContiguousScopeHandler extends BaseScopeHandler {
5656 position : Position ,
5757 ) : Iterable < TargetScope > {
5858 let targetRangeForward = next (
59- generateTargetRangesInDirection ( this . scopeHandler , editor , position , "forward" ) ,
59+ generateTargetRangesInDirection (
60+ this . scopeHandler ,
61+ editor ,
62+ position ,
63+ "forward" ,
64+ ) ,
6065 ) ;
6166
6267 const targetRangesBackwardIter = generateTargetRangesInDirection (
@@ -67,11 +72,14 @@ export class ContiguousScopeHandler extends BaseScopeHandler {
6772 ) ;
6873
6974 for ( const targetRange of targetRangesBackwardIter ) {
70- if ( targetsForward != null && isAdjacent ( targets [ 1 ] , targetsForward [ 0 ] ) ) {
71- yield targetsToScope ( targets [ 0 ] , targetsForward [ 1 ] ) ;
72- targetsForward = undefined ;
75+ if (
76+ targetRangeForward != null &&
77+ isAdjacent ( targetRange [ 1 ] , targetRangeForward [ 0 ] )
78+ ) {
79+ yield targetsToScope ( targetRange [ 0 ] , targetRangeForward [ 1 ] ) ;
80+ targetRangeForward = undefined ;
7381 } else {
74- yield targetsToScope ( ...targets ) ;
82+ yield targetsToScope ( ...targetRange ) ;
7583 }
7684 }
7785 }
@@ -80,26 +88,31 @@ export class ContiguousScopeHandler extends BaseScopeHandler {
8088 editor : TextEditor ,
8189 position : Position ,
8290 ) : Iterable < TargetScope > {
83- let targetsBackward = next (
84- getTargetsInDirection ( this . scopeHandler , editor , position , "backward" ) ,
91+ let targetRangeBackward = next (
92+ generateTargetRangesInDirection (
93+ this . scopeHandler ,
94+ editor ,
95+ position ,
96+ "backward" ,
97+ ) ,
8598 ) ;
8699
87- const targetsForward = getTargetsInDirection (
100+ const targetRangesForwardIter = generateTargetRangesInDirection (
88101 this . scopeHandler ,
89102 editor ,
90103 position ,
91104 "forward" ,
92105 ) ;
93106
94- for ( const targets of targetsForward ) {
107+ for ( const targetRange of targetRangesForwardIter ) {
95108 if (
96- targetsBackward != null &&
97- isAdjacent ( targetsBackward [ 1 ] , targets [ 0 ] )
109+ targetRangeBackward != null &&
110+ isAdjacent ( targetRangeBackward [ 1 ] , targetRange [ 0 ] )
98111 ) {
99- yield targetsToScope ( targetsBackward [ 0 ] , targets [ 1 ] ) ;
100- targetsBackward = undefined ;
112+ yield targetsToScope ( targetRangeBackward [ 0 ] , targetRange [ 1 ] ) ;
113+ targetRangeBackward = undefined ;
101114 } else {
102- yield targetsToScope ( ...targets ) ;
115+ yield targetsToScope ( ...targetRange ) ;
103116 }
104117 }
105118 }
@@ -125,7 +138,7 @@ function targetsToScope(
125138 } ;
126139}
127140
128- function * getTargetsInDirection (
141+ function * generateTargetRangesInDirection (
129142 scopeHandler : ScopeHandler ,
130143 editor : TextEditor ,
131144 position : Position ,
0 commit comments