Avoid cloning Name
when looking up function and class types
#14092
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Summary
Uses Salsa's new
Lookup
functionality forFunctionType
andClassType
names.The
Lookup
trait allows looking-up interned values by a borrowed value. In this casewe can lookup the interned type using the borrowed
str
and only allocate the owned `Name`` whenthe type doesn't already exist.
This was part of #14087 but I extracted it into its own PR to see if it is the reason for the significant incremental perf improvement.
Test Plan
cargo test