Fixes the tokenization of types by converting them to a new QuotedType token. We can get the original (resolved) type from this token so that we don't need to re-resolve a type after it is inserted into a macro's token stream. A QuotedType token holds onto an ID for the type rather than the type itself since our Type type does not implement Send or Sync, which is required through ParseError and UnresolvedTypeData.
Additional Context
Documentation*
Check one:
[x] No documentation needed.
[ ] Documentation included in this PR.
[ ] [For Experimental Features] Documentation to be submitted in a separate PR.
PR Checklist*
[x] I have tested the changes locally.
[x] I have formatted the changes with Prettier and/or cargo fmt on default settings.
Description
Problem*
Resolves #5309
Summary*
Fixes the tokenization of types by converting them to a new
QuotedType
token. We can get the original (resolved) type from this token so that we don't need to re-resolve a type after it is inserted into a macro's token stream. A QuotedType token holds onto an ID for the type rather than the type itself since ourType
type does not implement Send or Sync, which is required through ParseError and UnresolvedTypeData.Additional Context
Documentation*
Check one:
PR Checklist*
cargo fmt
on default settings.