@@ -992,7 +992,7 @@ class Global(settings: Settings, _reporter: Reporter, projectName: String = "")
992
992
993
993
private [interactive] def getScopeCompletion (pos : Position , response : Response [List [Member ]]): Unit = {
994
994
informIDE(" getScopeCompletion" + pos)
995
- respond(response) { scopeMemberFlatten( scopeMembers(pos) ) }
995
+ respond(response) { scopeMembers(pos) }
996
996
}
997
997
998
998
@ nowarn(" msg=inheritance from class LinkedHashMap" )
@@ -1045,14 +1045,7 @@ class Global(settings: Settings, _reporter: Reporter, projectName: String = "")
1045
1045
// imported val and var are always marked as inaccessible, but they could be accessed through their getters. scala/bug#7995
1046
1046
val member = if (s.hasGetter)
1047
1047
ScopeMember (s, st, context.isAccessible(s.getter, pre, superAccess = false ), viaImport)
1048
- else {
1049
- if (s.isAliasType) {
1050
- val aliasInfo = ScopeMember (s, st, context.isAccessible(s, pre, superAccess = false ), viaImport)
1051
- ScopeMember (s.info.typeSymbol, s.info.typeSymbol.tpe,
1052
- context.isAccessible(s.info.typeSymbol, pre, superAccess = false ), viaImport,
1053
- aliasInfo = Some (aliasInfo))
1054
- } else ScopeMember (s, st, context.isAccessible(s, pre, superAccess = false ), viaImport)
1055
- }
1048
+ else ScopeMember (s, st, context.isAccessible(s, pre, superAccess = false ), viaImport)
1056
1049
member.prefix = pre
1057
1050
member
1058
1051
}
@@ -1197,13 +1190,7 @@ class Global(settings: Settings, _reporter: Reporter, projectName: String = "")
1197
1190
symbol.name.isTermName == name.isTermName || // Keep names of the same type
1198
1191
name.isTypeName && isStable // Completing a type: keep stable terms (paths)
1199
1192
}
1200
- // scala/bug#11846 aliasInfo should be match
1201
- def aliasTypeOk : Boolean = {
1202
- matcher(member.aliasInfo.map(_.sym.name).getOrElse(NoSymbol .name)) && ! forImport && symbol.name.isTermName == name.isTermName
1203
- }
1204
-
1205
- ! isJunk && member.accessible && ! symbol.isConstructor && (name.isEmpty || (matcher(member.sym.name) || aliasTypeOk)
1206
- && nameTypeOk)
1193
+ ! isJunk && member.accessible && ! symbol.isConstructor && (name.isEmpty || matcher(member.sym.name)) && nameTypeOk
1207
1194
1208
1195
}
1209
1196
}
@@ -1224,11 +1211,6 @@ class Global(settings: Settings, _reporter: Reporter, projectName: String = "")
1224
1211
}
1225
1212
}
1226
1213
1227
- private def scopeMemberFlatten (members : List [ScopeMember ]): List [ScopeMember ] = {
1228
- val (infoWithoutAlias, infoWithAlias) = members.partition(_.aliasInfo.isEmpty)
1229
- infoWithoutAlias ++ infoWithAlias ++ infoWithAlias.flatten(_.aliasInfo)
1230
- }
1231
-
1232
1214
final def completionsAt (pos : Position ): CompletionResult = {
1233
1215
val focus1 : Tree = typedTreeAt(pos)
1234
1216
def typeCompletions (tree : Tree , qual : Tree , nameStart : Int , name : Name ): CompletionResult = {
@@ -1256,13 +1238,13 @@ class Global(settings: Settings, _reporter: Reporter, projectName: String = "")
1256
1238
val allMembers = scopeMembers(pos)
1257
1239
val positionDelta : Int = pos.start - focus1.pos.start
1258
1240
val subName = name.subName(0 , positionDelta)
1259
- CompletionResult .ScopeMembers (positionDelta, scopeMemberFlatten( allMembers) , subName, forImport = false )
1241
+ CompletionResult .ScopeMembers (positionDelta, allMembers, subName, forImport = false )
1260
1242
case imp@ Import (i @ Ident (name), head :: Nil ) if head.name == nme.ERROR =>
1261
1243
val allMembers = scopeMembers(pos)
1262
1244
val nameStart = i.pos.start
1263
1245
val positionDelta : Int = pos.start - nameStart
1264
1246
val subName = name.subName(0 , pos.start - i.pos.start)
1265
- CompletionResult .ScopeMembers (positionDelta, scopeMemberFlatten( allMembers) , subName, forImport = true )
1247
+ CompletionResult .ScopeMembers (positionDelta, allMembers, subName, forImport = true )
1266
1248
case imp@ Import (qual, selectors) =>
1267
1249
selectors.reverseIterator.find(_.namePos <= pos.start) match {
1268
1250
case None => CompletionResult .NoResults
@@ -1285,7 +1267,7 @@ class Global(settings: Settings, _reporter: Reporter, projectName: String = "")
1285
1267
val allMembers = scopeMembers(pos)
1286
1268
val positionDelta : Int = pos.start - focus1.pos.start
1287
1269
val subName = name.subName(0 , positionDelta)
1288
- CompletionResult .ScopeMembers (positionDelta, scopeMemberFlatten( allMembers) , subName, forImport = false )
1270
+ CompletionResult .ScopeMembers (positionDelta, allMembers, subName, forImport = false )
1289
1271
case _ =>
1290
1272
CompletionResult .NoResults
1291
1273
}
0 commit comments