summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorJason Zaugg <jzaugg@gmail.com>2015-09-21 21:46:07 +1000
committerJason Zaugg <jzaugg@gmail.com>2015-09-21 21:46:49 +1000
commitd8d8ba71236bc18d0b4c74f9ebead2973dc6e435 (patch)
tree659f7291a5f42a0c98e532892e6742165d0dfcec /src
parent01103764ef576395dc6201d1d2b5a700a28bdd2a (diff)
downloadscala-d8d8ba71236bc18d0b4c74f9ebead2973dc6e435.tar.gz
scala-d8d8ba71236bc18d0b4c74f9ebead2973dc6e435.tar.bz2
scala-d8d8ba71236bc18d0b4c74f9ebead2973dc6e435.zip
Remove used param and document positionDelta
Diffstat (limited to 'src')
-rw-r--r--src/interactive/scala/tools/nsc/interactive/Global.scala11
-rw-r--r--src/repl/scala/tools/nsc/interpreter/IMain.scala2
-rw-r--r--src/repl/scala/tools/nsc/interpreter/PresentationCompilerCompleter.scala4
3 files changed, 9 insertions, 8 deletions
diff --git a/src/interactive/scala/tools/nsc/interactive/Global.scala b/src/interactive/scala/tools/nsc/interactive/Global.scala
index cc4b845b2c..6600fea2d8 100644
--- a/src/interactive/scala/tools/nsc/interactive/Global.scala
+++ b/src/interactive/scala/tools/nsc/interactive/Global.scala
@@ -1157,8 +1157,9 @@ class Global(settings: Settings, _reporter: Reporter, projectName: String = "")
sealed abstract class CompletionResult {
type M <: Member
def results: List[M]
- /** The (possibly partial) detected that precedes the cursor */
+ /** The (possibly partial) name detected that precedes the cursor */
def name: Name
+ /** Cursor Offset - positionDelta == position of the start of the name */
def positionDelta: Int
def matchingResults(nameMatcher: (Name) => Name => Boolean = entered => candidate => candidate.startsWith(entered)): List[M] = {
val enteredName = if (name == nme.ERROR) nme.EMPTY else name
@@ -1223,7 +1224,7 @@ class Global(settings: Settings, _reporter: Reporter, projectName: String = "")
def typeCompletions(tree: Tree, qual: Tree, nameStart: Int, name: Name): CompletionResult = {
val qualPos = qual.pos
val allTypeMembers = typeMembers(qualPos).toList.flatten
- val positionDelta: Int = nameStart - pos.start
+ val positionDelta: Int = pos.start - nameStart
val subName: Name = name.newName(new String(pos.source.content, nameStart, pos.start - nameStart)).encodedName
CompletionResult.TypeMembers(positionDelta, qual, tree, allTypeMembers, subName)
}
@@ -1231,7 +1232,7 @@ class Global(settings: Settings, _reporter: Reporter, projectName: String = "")
case imp@Import(i @ Ident(name), head :: Nil) if head.name == nme.ERROR =>
val allMembers = scopeMembers(pos)
val nameStart = i.pos.start
- val positionDelta: Int = nameStart - pos.start
+ val positionDelta: Int = pos.start - nameStart
val subName = name.subName(0, pos.start - i.pos.start)
CompletionResult.ScopeMembers(positionDelta, allMembers, subName)
case imp@Import(qual, selectors) =>
@@ -1250,8 +1251,8 @@ class Global(settings: Settings, _reporter: Reporter, projectName: String = "")
typeCompletions(sel, qual, nameStart, name)
case Ident(name) =>
val allMembers = scopeMembers(pos)
- val positionDelta: Int = focus1.pos.start - pos.start
- val subName = name.subName(0, -positionDelta)
+ val positionDelta: Int = pos.start - focus1.pos.start
+ val subName = name.subName(0, positionDelta)
CompletionResult.ScopeMembers(positionDelta, allMembers, subName)
case _ =>
CompletionResult.NoResults
diff --git a/src/repl/scala/tools/nsc/interpreter/IMain.scala b/src/repl/scala/tools/nsc/interpreter/IMain.scala
index f6f391600b..ef6ab4063a 100644
--- a/src/repl/scala/tools/nsc/interpreter/IMain.scala
+++ b/src/repl/scala/tools/nsc/interpreter/IMain.scala
@@ -1180,7 +1180,7 @@ class IMain(@BeanProperty val factory: ScriptEngineFactory, initialSettings: Set
case class Incomplete(trees: List[Tree]) extends Result
case class Success(trees: List[Tree]) extends Result
- def apply(line: String, forPresentation: Boolean = false): Result = debugging(s"""parse("$line")""") {
+ def apply(line: String): Result = debugging(s"""parse("$line")""") {
var isIncomplete = false
def parse = {
reporter.reset()
diff --git a/src/repl/scala/tools/nsc/interpreter/PresentationCompilerCompleter.scala b/src/repl/scala/tools/nsc/interpreter/PresentationCompilerCompleter.scala
index 01735aed3a..0fb3236966 100644
--- a/src/repl/scala/tools/nsc/interpreter/PresentationCompilerCompleter.scala
+++ b/src/repl/scala/tools/nsc/interpreter/PresentationCompilerCompleter.scala
@@ -97,14 +97,14 @@ class PresentationCompilerCompleter(intp: IMain) extends Completion with ScalaCo
|| CompletionResult.camelMatch(r.name)(r.name.newName(StringOps.longestCommonPrefix(memberCompletions)))
)
if (memberCompletions.isEmpty) Completion.NoCandidates
- else if (allowCompletion) Candidates(cursor + r.positionDelta, memberCompletions)
+ else if (allowCompletion) Candidates(cursor - r.positionDelta, memberCompletions)
else Candidates(cursor, "" :: memberCompletions)
} else if (matching.nonEmpty && matching.forall(_.symNameDropLocal == r.name))
Completion.NoCandidates // don't offer completion if the only option has been fully typed already
else {
// regular completion
val memberCompletions: List[String] = matching.map(_.symNameDropLocal.decoded).distinct.sorted
- Candidates(cursor + r.positionDelta, memberCompletions)
+ Candidates(cursor - r.positionDelta, memberCompletions)
}
}
lastCommonPrefixCompletion =