nodejs / nodejs/node-addon-api
Adopt C++20 defaulted comparisons (operator== / <=>)
Personne n'a encore pris cette issue.
- Langage dominant
- C++
- Étoiles
- 2.4k
- Forks
- 499
- Merge moyen
- 2 j 11 h
- PR mergées (30 j)
- 2
Description
Several node-addon-api types define operator== and operator!= as an explicit pair, where the != is always return !operator==(other);. In C++20 the compiler synthesizes a != b from operator==, so the hand-written != overloads become redundant and can be removed. Where the comparison is plain memberwise equality, operator== itself can be = defaulted.
Regarding <=>, the only plausible type is Maybe<T> where T is ordered.
Guide de contribution
Ouvrir le guide de contribution
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Piste de recherche
Repérez les types de node-addon-api qui définissent des paires explicites operator== et operator!=, puis examinez Maybe pour les comparaisons ordonnées. Le travail est terminé lorsque les surcharges != redondantes sont supprimées et que les opérateurs == ou <=> éligibles sont définis comme default, sans modifier le comportement des comparaisons.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Évaluation
- Stack technique
- cpp
- Domaine
- api
- Type d'issue
- Refactorisation
- Difficulté
- 4/5
- Temps estimé
- 3-5 jours
- Activité
- Calme
- Clarté
- Plutôt claire
- Accessibilité débutants
- 52/100