diff options
author | Eugene Burmako <xeno.by@gmail.com> | 2012-09-16 08:27:10 -0700 |
---|---|---|
committer | Eugene Burmako <xeno.by@gmail.com> | 2012-09-16 08:27:10 -0700 |
commit | 4d8d2e52361586f32a1a52b9a78728aca0d5bf0c (patch) | |
tree | 3a227e84d0c795bd3cb81bdcc8a9d98fc675054e /src/library | |
parent | 24580ac84242679619d27f20258078dd012c120a (diff) | |
parent | 05be78101c694974ae964bb26b48c1a0b5a372c1 (diff) | |
download | scala-4d8d2e52361586f32a1a52b9a78728aca0d5bf0c.tar.gz scala-4d8d2e52361586f32a1a52b9a78728aca0d5bf0c.tar.bz2 scala-4d8d2e52361586f32a1a52b9a78728aca0d5bf0c.zip |
Merge pull request #1311 from scalamacros/topic/magic
deals with magic
Diffstat (limited to 'src/library')
-rw-r--r-- | src/library/scala/StringContext.scala | 3 | ||||
-rw-r--r-- | src/library/scala/reflect/base/Universe.scala | 3 | ||||
-rw-r--r-- | src/library/scala/reflect/macros/internal/package.scala | 3 |
3 files changed, 6 insertions, 3 deletions
diff --git a/src/library/scala/StringContext.scala b/src/library/scala/StringContext.scala index 453f29d9e6..1201b1accd 100644 --- a/src/library/scala/StringContext.scala +++ b/src/library/scala/StringContext.scala @@ -96,7 +96,8 @@ case class StringContext(parts: String*) { * string literally. This is achieved by replacing each such occurrence by the * format specifier `%%`. */ - // The implementation is magically hardwired into `scala.tools.reflect.MacroImplementations.macro_StringInterpolation_f` + // The implementation is hardwired to `scala.tools.reflect.MacroImplementations.macro_StringInterpolation_f` + // Using the mechanism implemented in `scala.tools.reflect.FastTrack` def f(args: Any*): String = ??? // macro } diff --git a/src/library/scala/reflect/base/Universe.scala b/src/library/scala/reflect/base/Universe.scala index 11290401ec..36b85ca714 100644 --- a/src/library/scala/reflect/base/Universe.scala +++ b/src/library/scala/reflect/base/Universe.scala @@ -61,6 +61,7 @@ abstract class Universe extends Symbols * * Since reified trees can be compiled outside of the scope they've been created in, * special measures are taken to ensure that all members accessed in the reifee remain visible */ - // implementation is magically hardwired to `scala.reflect.reify.Taggers` + // implementation is hardwired to `scala.reflect.reify.Taggers` + // using the mechanism implemented in `scala.tools.reflect.FastTrack` def reify[T](expr: T): Expr[T] = ??? // macro }
\ No newline at end of file diff --git a/src/library/scala/reflect/macros/internal/package.scala b/src/library/scala/reflect/macros/internal/package.scala index aca2b765f1..8457285752 100644 --- a/src/library/scala/reflect/macros/internal/package.scala +++ b/src/library/scala/reflect/macros/internal/package.scala @@ -4,7 +4,8 @@ import scala.reflect.base.{Universe => BaseUniverse} import scala.reflect.ClassTag // anchors for materialization macros emitted during tag materialization in Implicits.scala -// implementation is magically hardwired into `scala.reflect.reify.Taggers` +// implementation is hardwired into `scala.reflect.reify.Taggers` +// using the mechanism implemented in `scala.tools.reflect.FastTrack` // todo. once we have implicit macros for tag generation, we can remove these anchors package object internal { private[scala] def materializeClassTag[T](u: BaseUniverse): ClassTag[T] = ??? // macro |