facebook / facebook/flow

Enforce an override keyword for class methods

Abierto
#1,480 1 comentario 0 reacciones 0 asignados Ver en GitHub
feature request
Lenguaje dominante
Rust
Estrellas
22.3k
Forks
1.9k
Métricas de merge de PR
Sin PR fusionados en 30 d

Descripción

Hi flow team. Firstly, thanks so much for putting together this tool.

I have decently complex class hierarchy and I'd love to have the requirement (or the ability to set the requirement) that I explicitly state when a method is overriding another method. Something like:

```
class Animal {
goes () {
return '';
}
}

class Cow extends Animal {
override goes () {
return 'moo';
}
}
```

then in the case of a missing override:

```
class Cat extends Animal {
goes () {
return 'meow';
}
}
```

we could report something like `overriding method 'goes' missing 'override' keyword`

and in the case of an unnecessary override:

```
class Dog extends Animal {
override barks () {
return 'woof';
}
}
```

we could report something like `method 'bark' is not an overriding method`

My apologies if this change has already been discussed/is infeasible. I looked for a similar discussion and could not find one. If this sounds like an interesting idea please let me know and I can look into putting together a PR for it.

Guía de contribución

Abrir la guía de contribución

Evaluación

Este issue todavía no se ha evaluado.

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.