Skip to content

Commit 6c82d0a

Browse files
authored
Match the right boundary when searching for elements (#301)
Fixes #300.
1 parent 5da5195 commit 6c82d0a

2 files changed

Lines changed: 9 additions & 1 deletion

File tree

src/main/java/org/javacs/FindNameAt.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -99,6 +99,6 @@ private boolean contains(Tree t, CharSequence name, long find) {
9999
start = FindHelper.findNameIn(root, name, start, end);
100100
end = start + name.length();
101101
if (start == -1 || end == -1) return false;
102-
return start <= find && find < end;
102+
return start <= find && find <= end;
103103
}
104104
}

src/test/java/org/javacs/GotoTest.java

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -75,6 +75,14 @@ public void methodReference() {
7575
assertThat(suggestions, hasItem("Goto.java:41"));
7676
}
7777

78+
@Test
79+
public void wordBoundary() {
80+
for (var column = 9; column <= 14; column++) {
81+
var suggestions = doGoto(file, 10, column);
82+
assertThat(suggestions, hasItem("Goto.java:5"));
83+
}
84+
}
85+
7886
@Test
7987
public void otherStaticMethod() {
8088
var suggestions = doGoto(file, 29, 25);

0 commit comments

Comments
 (0)