Return a static string for Enum::variant_name #12504
Closed
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.
Objective
The
reflect::Enum::variant_name()
should return a static string; the name returned shouldn't depend on the lifetime of the enum itself. I'm using reflection with Enums in a library and I was expecting thevariant_name
function to give me a string that is indenpendent to my object's lifetimeCaveats:
&'static str
?reflect::Enum::name_at()
but I wasn't able to get it working because of DynamicEnumMigration Guide
reflect::DynamicEnum
now requires a&'static str
for the variant_name instead of a String