-
Notifications
You must be signed in to change notification settings - Fork 49
Fix Issue #31 TagMacro: resolve parameters inside type bounds & wildcards #537
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
@cmofx Great work! 👍 Could you please also tests for recursive bound case, such as |
Just added the support for recursive bound case, updated the SharedTagTest.scala |
Looks nice for me, thank you for your help. |
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.
LGTM, will try to merge tomorrow 👍
izumi-reflect/izumi-reflect/src/main/scala/izumi/reflect/macrortti/LightTypeTag.scala
Outdated
Show resolved
Hide resolved
Updated the way to map LightTypeTag.ref to AbstractReference |
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.
@cmofx I reviewed in detail and found a failure when TagMacro combination inside bounds is combined with covariance on Scala 2.12/2.13, could you please look at it? Thanks. The details are in the PR comments
/claim #31
I added new function wildcardType in LightTypeTag to create bounds wildcard type tag.
Also changed the TacMacro in scala 3 and scala 2 to parse the tag type bound parameters and summon the type tags accordingly
Also fixed a bug in the scala 2 ReflectionUtil.scala that TypeBound's lower bound is not checked for strong type