Creando enumerados con datos asociados en Kotlin

Últimamente, he estado desarrollando en Swift por motivos de trabajo y, para ser sincero, me encantan los enumerados con datos asociados de Swift. Si no sabes lo que es, no te preocupes, veremos ejemplos pero te puedo asegurar que luego no podrás vivir sin ellos. Normalmente, un enum (enumerado) puede contener información, pero el tipo tiene que ser el mismo para todos los casos. Ejemplo: public enum DayOfWeek { MONDAY(1), TUESDAY(2), WEDNESDAY(3), THURSDAY(4), FRIDAY(5), SATURDAY(6), SUNDAY(7); private int dayNumber; private DayOfWeek(int dayNumber) { this.dayNumber = dayNumber; } public int getDayNumber() { return dayNumber; } } Mismo código en...