To view all the implicits
in-scope during a REPL session:
scala> :implicits
To also include implicit conversions defined in Predef.scala
:
scala> :implicits -v
If one has an expression and wishes to view the effect of all rewrite rules that apply to it (including implicits):
scala> reflect.runtime.universe.reify(expr) // No quotes. reify is a macro operating directly on code.
(Example:
scala> import reflect.runtime.universe._
scala> reify(Array("Alice", "Bob", "Eve").mkString(", "))
resX: Expr[String] = Expr[String](Predef.refArrayOps(Array.apply("Alice", "Bob", "Eve")(Predef.implicitly)).mkString(", "))
)