nodejs / nodejs/node-addon-api

Adopt C++20 defaulted comparisons (operator== / <=>)

Aberta
#1,748 0 comentários 0 reações 0 responsáveis Ver no GitHub

Ninguém assumiu esta issue ainda.

blocked SemVer-major
Linguagem predominante
C++
Estrelas
2.4k
Forks
499
Merge médio
2d 11h
PRs com merge (30d)
2

Descrição

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.

Guia de contribuição

Abrir o guia de contribuição

Primeiros passos

  1. Leia a issue inteira e depois o guia de contribuição do projeto.
  2. Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
  3. Faça um fork do repositório e trabalhe em uma branch.
  4. Abra um pull request que referencie o número da issue.

Direção de pesquisa

Localize os tipos de node-addon-api que definem pares explícitos de operator== e operator!= e, em seguida, inspecione Maybe em busca de comparações ordenadas. A tarefa estará concluída quando os overloads redundantes de != forem removidos e os operadores == ou <=> elegíveis forem definidos como default, sem alterar o comportamento das comparações.

Escrita pelo modelo de indexação a partir do texto da issue.

Avaliação

Stack de tecnologia
cpp
Domínio
api
Tipo de issue
Refatoração
Dificuldade
4/5
Tempo estimado
3-5 dias
Status de atividade
Pouca atividade
Clareza
Razoavelmente clara
Facilidade para iniciantes
52/100

Receba novas issues na sua caixa de entrada

Um resumo curto de issues do GitHub para quem está começando.