Assemblyscript: Enums de string de suporte

Criado em 26 mar. 2019  ·  4Comentários  ·  Fonte: AssemblyScript/assemblyscript

enum Weekend {
  Friday = 'FRIDAY',
  Saturday = 'SATURDAY',
  Sunday = 'SUNDAY'
}
enhancement

Todos 4 comentários

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.

Esta página foi útil?
0 / 5 - 0 avaliações