enum Weekend {
Friday = 'FRIDAY',
Saturday = 'SATURDAY',
Sunday = 'SUNDAY'
}
Estou interessado em trabalhar neste recurso. Alguma orientação sobre qual seria um bom lugar para começar?
Além disso, queremos apoiar algo assim -
enum BooleanLikeHeterogeneousEnum {
No = 0,
Yes = 'YES',
}
Além disso, queremos apoiar algo assim
Acho que sim. Na verdade, enum
é apenas outra variante de constantes agrupadas no mesmo namespace, então BooleanLikeHeterogeneousEnum.No
deve apenas substituir por 0
e BooleanLikeHeterogeneousEnum.YES
por 'YES'
.
@dcodeIO wdyt?
Em termos de tipo, o compilador atualmente assume que var a: SomeEnum
é i32
. Como tal, misturar diferentes tipos de valores parece problemático quase da mesma maneira que os tipos de união. Enums de string puras devem ser possíveis da mesma maneira
namespace Weekend {
const Friday = 'FRIDAY';
const Saturday = 'SATURDAY';
const Sunday = 'SUNDAY';
}
type Weekend = string;
é. Quão importante você diria que enums de string são sobre essa sintaxe?
Removendo o rótulo good first issue
aqui, porque isso pode se tornar bastante complicado. Não é super complicado, mas potencialmente complicado demais para um primeiro problema.