@@ -12,6 +12,27 @@ import dotty.tools.dotc.interactive.{Completion, Interactive}
12
12
import dotty .tools .dotc .util .SourcePosition
13
13
14
14
object AmmCompletion extends AmmCompletionExtras {
15
+ val blacklist = Set (
16
+ " scala.Predef.any2stringadd.+" ,
17
+ " scala.Any.##" ,
18
+ " java.lang.Object.##" ,
19
+ " scala.<byname>" ,
20
+ " scala.<empty>" ,
21
+ " scala.<repeated>" ,
22
+ " scala.<repeated...>" ,
23
+ " scala.Predef.StringFormat.formatted" ,
24
+ " scala.Predef.Ensuring.ensuring" ,
25
+ " scala.Predef.ArrowAssoc.->" ,
26
+ " scala.Predef.ArrowAssoc.→" ,
27
+ " java.lang.Object.synchronized" ,
28
+ " java.lang.Object.ne" ,
29
+ " java.lang.Object.eq" ,
30
+ " java.lang.Object.wait" ,
31
+ " java.lang.Object.notifyAll" ,
32
+ " java.lang.Object.notify" ,
33
+ " java.lang.Object.clone" ,
34
+ " java.lang.Object.finalize"
35
+ )
15
36
16
37
def completions (
17
38
pos : SourcePosition ,
@@ -46,7 +67,9 @@ object AmmCompletion extends AmmCompletionExtras {
46
67
var extra = List .empty[Completion ]
47
68
48
69
val completions = path match {
49
- case Select (qual, _) :: _ => completer.selectionCompletions(qual)
70
+ case Select (qual, _) :: _ =>
71
+ completer.selectionCompletions(qual)
72
+ .filter((_, mbrs) => ! mbrs.exists(mbr => blacklist(mbr.symbol.fullName.decode.toString)))
50
73
case Import (Ident (name), _) :: _
51
74
if name.decode.toString == " $ivy" && dependencyCompleteOpt.nonEmpty =>
52
75
val complete = dependencyCompleteOpt.get
@@ -79,28 +102,6 @@ object AmmCompletion extends AmmCompletionExtras {
79
102
matches : Name => Boolean
80
103
) extends Completion .Completer (mode, pos, untpdPath, matches):
81
104
private def blacklisted (s : Symbol )(using Context ) = {
82
- val blacklist = Set (
83
- " scala.Predef.any2stringadd.+" ,
84
- " scala.Any.##" ,
85
- " java.lang.Object.##" ,
86
- " scala.<byname>" ,
87
- " scala.<empty>" ,
88
- " scala.<repeated>" ,
89
- " scala.<repeated...>" ,
90
- " scala.Predef.StringFormat.formatted" ,
91
- " scala.Predef.Ensuring.ensuring" ,
92
- " scala.Predef.ArrowAssoc.->" ,
93
- " scala.Predef.ArrowAssoc.→" ,
94
- " java.lang.Object.synchronized" ,
95
- " java.lang.Object.ne" ,
96
- " java.lang.Object.eq" ,
97
- " java.lang.Object.wait" ,
98
- " java.lang.Object.notifyAll" ,
99
- " java.lang.Object.notify" ,
100
- " java.lang.Object.clone" ,
101
- " java.lang.Object.finalize"
102
- )
103
-
104
105
blacklist(s.showFullName) ||
105
106
s.isOneOf(GivenOrImplicit ) ||
106
107
// Cache objects, which you should probably never need to
0 commit comments