How can a member of an enum be of the same type as the enum itself?
Internally enums seem to be a pair of arrays, one of strings for the names and the other usually of ints. When I select a specific enum member and pass it into a method (i.e. NflTeams.Raiders) I would expect the parameter type to be an int, or maybe a tuple of a string and int, but the member is actually of the same type as the enum itself (i.e. NflTeams). What’s going on there? Is a copy of the enum being passed in? Could it be that an enum member is like the “instance” property of a singleton, which is of the same type as the singleton itself?