A string literal with an enum context may resolve to a variant by matching it with its lowercase snake-form. If the variant’s class name is not in SCREAMING_SNAKE_CASE, convert it to lowercase snake-form at best effort.
Conversion from/into String
For tagged enums, allow fallible conversion conversion from any String.
For tagged enums, allow successible conversion into String.
Thank you for writing this up. However, I’m afraid this is not the Scala way. We don’t use strings for enum values. If import E._ bothers you, you can do export E._ once in the same file as enum E:, and then you get the members everywhere.