Assemblyscript: Prise en charge des énumérations de chaînes

Créé le 26 mars 2019  ·  4Commentaires  ·  Source: AssemblyScript/assemblyscript

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

Tous les 4 commentaires

Je suis intéressé à travailler sur cette fonctionnalité. Avez-vous des conseils sur ce qui serait un bon endroit pour commencer?

Aussi, voulons-nous soutenir quelque chose comme ça -

enum BooleanLikeHeterogeneousEnum {
    No = 0,
    Yes = 'YES',
}

Aussi, voulons-nous soutenir quelque chose comme ça

Je pense que oui. En fait, enum n'est qu'une autre variante des constantes regroupées sous le même espace de noms, donc BooleanLikeHeterogeneousEnum.No devrait simplement remplacer par 0 et BooleanLikeHeterogeneousEnum.YES par 'YES' .

@dcodeIO wdyt?

En ce qui concerne le type, le compilateur suppose actuellement que var a: SomeEnum est i32 . En tant que tel, le mélange de différents types de valeurs semble problématique à peu près de la même manière que les types d'union. Les énumérations de chaînes pures devraient être possibles de la même manière

namespace Weekend {
  const Friday = 'FRIDAY';
  const Saturday = 'SATURDAY';
  const Sunday = 'SUNDAY';
}
type Weekend = string;

est. Quelle importance diriez-vous que les énumérations de chaînes sont sur cette syntaxe ?

Supprimer l'étiquette good first issue ici, car cela pourrait devenir assez délicat. Pas super compliqué, mais potentiellement trop compliqué pour un tout premier numéro.

Cette page vous a été utile?
0 / 5 - 0 notes