-
Notifications
You must be signed in to change notification settings - Fork 1.1k
Remove quoted.Type synthesization #9448
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
* Explicit * Synthesized implicits * Inlined
Just as `$t` is equivalent to `t.T`, `'[T]` is equivalent to `Type[T]`
Now it is a plain `given` definition and follows the normal implicit resulution rules. Dealiasing of local inconsitent type aliases references are handled by `PCPCheckAndHeal` before healing is atempted.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Nice simplification 👍
case NoPrefix if level > levelOf(tp.symbol) && !tp.typeSymbol.hasAnnotation(defn.InternalQuoted_QuoteTypeTagAnnot) => | ||
tp.dealias match | ||
case `tp` => tryHeal(tp.symbol, tp, pos) | ||
case tp1 => apply(tp1) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I wasn't clear in the previous comment. I mean what about doing dealiasing at line 175?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
No, that is too much dealiasing. There are a few aliases that we care about, such as the type splices.
I will revert this change.
4cda53f
to
7c4fa0c
Compare
scala.quoted.Type.apply[T]
. Just as$t
is equivalent tot.T
,'[T]
is equivalent toType[T]
.quoted.Type