@EnumOptionSet is a Swift attached member macro to declare option sets using an enumeration notation.
The EnumRawValues is a Swift attached extension macro to add raw values for enums.
A Swift macro that extracts associated values from enum cases
@CaseEquatable is a Swift macro that automatically generates a “raw” case-only enumeration and makes your enum conform to CaseEquatable. This allows you to compare only the case names—ignoring any associated values.