-
Notifications
You must be signed in to change notification settings - Fork 1.1k
Refactor splice interpreter #16280
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
Refactor splice interpreter #16280
Conversation
f94710c
to
05303a9
Compare
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.
Otherwise LGTM.
import dotty.tools.repl.AbstractFileClassLoader | ||
|
||
|
||
/** List of classes of the parameters of the signature of `sym` */ |
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.
That comment seems misplaced? It also appears above def paramsSig
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.
Removed. I must have pasted it by mistake.
|
||
type Env = Map[Symbol, Object] | ||
|
||
/** Returns the interpreted result of interpreting the code a call to the symbol with default arguments. |
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.
Looks like this comment was here before but I'm having trouble interpreting it myself :). Is there a word missing around "the code a call", should it be "the code of a call" ?
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 rewrote the sentence.
Extract the general purpose logic from the splice interpreter. The new interpreter class will be the basis for the macro annotation interpreter. The splice interpreter only keeps logic related with level -1 quote and type evaluation. Part of https://github.com/dotty-staging/dotty/tree/design-macro-annotations
05303a9
to
ee51648
Compare
Extract the general purpose logic from the splice interpreter. The new interpreter class will be the basis for the macro annotation interpreter. The splice interpreter only keeps logic related with level -1 quote and type evaluation.
Part of https://github.com/dotty-staging/dotty/tree/design-macro-annotations