-
Notifications
You must be signed in to change notification settings - Fork 50
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
Arbitrary arity tuple #435
Conversation
a62ad2a
to
a2f11a1
Compare
c81a9ea
to
306c524
Compare
2c2fc94
to
8690ffa
Compare
'{EmptyTuple} | ||
} else if (tpe <:< TypeRepr.of[Tuple]) { | ||
'{scala.runtime.Tuples.fromIArray(IArray(${Varargs(terms)})).asInstanceOf[T]} | ||
// Alternative version: |
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.
Why keeping commented code? 🤔
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 wanted to consult which version is preferred - array based or recursion-based.
t match { | ||
case | ||
Inlined( | ||
// Some(Apply( |
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.
Question: should we also match on call
part or is it enough to match just the body?
This is really amazing work! Thank you! |
Fixes #411
Problem
To support Scala 3-style tuples, a few changes are needed:
*:
) inside quotes.Solution
So far Quat and decoding are implemented.
There are two variants of decoding:
The latter might be more performant.
Checklist
README.md
if applicable[WIP]
to the pull request title if it's work in progress@getquill/maintainers