summaryrefslogtreecommitdiff
path: root/src/repl
diff options
context:
space:
mode:
authorBrian McKenna <brian@simpleenergy.com>2014-10-07 21:05:52 -0600
committerBrian McKenna <brian@simpleenergy.com>2014-10-07 21:10:37 -0600
commit33fd41882329291b4a9e386331b9497994a36e51 (patch)
treef35779488a1ba8eb473994f72e9ac5f6657355e0 /src/repl
parent8a560a2806ca28b5dbd913df34d56f4b8aebb4c0 (diff)
downloadscala-33fd41882329291b4a9e386331b9497994a36e51.tar.gz
scala-33fd41882329291b4a9e386331b9497994a36e51.tar.bz2
scala-33fd41882329291b4a9e386331b9497994a36e51.zip
Use color REPL after writing a def
Diffstat (limited to 'src/repl')
-rw-r--r--src/repl/scala/tools/nsc/interpreter/MemberHandlers.scala29
1 files changed, 19 insertions, 10 deletions
diff --git a/src/repl/scala/tools/nsc/interpreter/MemberHandlers.scala b/src/repl/scala/tools/nsc/interpreter/MemberHandlers.scala
index 8e624174ed..bcba7b6dfd 100644
--- a/src/repl/scala/tools/nsc/interpreter/MemberHandlers.scala
+++ b/src/repl/scala/tools/nsc/interpreter/MemberHandlers.scala
@@ -102,6 +102,18 @@ trait MemberHandlers {
class GenericHandler(member: Tree) extends MemberHandler(member)
+ import scala.io.AnsiColor.{ BOLD, BLUE, GREEN, RESET }
+
+ def color(c: String, s: String) =
+ if (replProps.colorOk) string2code(BOLD) + string2code(c) + s + string2code(RESET)
+ else s
+
+ def colorName(s: String) =
+ color(BLUE, string2code(s))
+
+ def colorType(s: String) =
+ color(GREEN, string2code(s))
+
class ValHandler(member: ValDef) extends MemberDefHandler(member) {
val maxStringElements = 1000 // no need to mkString billions of elements
override def definesValue = true
@@ -119,14 +131,8 @@ trait MemberHandlers {
if (replProps.vids) s"""" + f"@$${System.identityHashCode($path)}%8x" + """"
else ""
- import scala.io.AnsiColor.{ BOLD, BLUE, GREEN, RESET }
-
- def color(c: String, s: String) =
- if (replProps.colorOk) string2code(BOLD) + string2code(c) + s + string2code(RESET)
- else s
-
- val nameString = color(BLUE, string2code(prettyName)) + vidString
- val typeString = color(GREEN, string2code(req typeOf name))
+ val nameString = colorName(prettyName) + vidString
+ val typeString = colorType(req typeOf name)
s""" + "$nameString: $typeString = " + $resultString"""
}
}
@@ -134,8 +140,11 @@ trait MemberHandlers {
class DefHandler(member: DefDef) extends MemberDefHandler(member) {
override def definesValue = flattensToEmpty(member.vparamss) // true if 0-arity
- override def resultExtractionCode(req: Request) =
- if (mods.isPublic) codegenln(name, ": ", req.typeOf(name)) else ""
+ override def resultExtractionCode(req: Request) = {
+ val nameString = colorName(name)
+ val typeString = colorType(req typeOf name)
+ if (mods.isPublic) s""" + "$nameString: $typeString\\n"""" else ""
+ }
}
abstract class MacroHandler(member: DefDef) extends MemberDefHandler(member) {