Java: Make it more explicit when CodeQL classes and predicates only apply to Kotlin
- Lenguaje dominante
- CodeQL
- Estrellas
- 10.1k
- Forks
- 2.1k
- Merge medio
- 2 d 15 h
- PR fusionados (30 d)
- 141
Descripción
For multiple CodeQL classes (and possibly predicates) for Java / Kotlin it is not obvious that they only apply to Kotlin. This makes it difficult to read the documentation and decide if you have to specially treat a certain CodeQL class, or even what the CodeQL class represents in the first place.
A good (negative) example for this is [`PropertyRefExpr`](https://codeql.github.com/codeql-standard-libraries/java/semmle/code/java/Expr.qll/type.Expr$PropertyRefExpr.html). Neither the name nor the documentation give any indication that this is Kotlin-specific. You can only guess this if you have used Kotlin before and the term "property" in combination with "`get`" and "`set`" sound familiar.
Some Kotlin-specific classes seem to be prefixed with `Kotlin` or `Kt` (see [index](https://codeql.github.com/codeql-standard-libraries/java/index.html#K)), but this is not consistent.
I assume this general issue might affect other languages supported by CodeQL as well, such as C / C++ and JavaScript / TypeScript.
Maybe it would be useful if CodeQL QLDoc comments supported some kind of "tag" which would be shown in the documentation whenever the name of the class or predicate is displayed, similar to how the Javadoc displays Preview features (see for example [Java 21 `FormatProcessor`](https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/util/FormatProcessor.html)).
Or alternatively it would be good if a certain prefix such as "Kt" would be used consistently.
What do you think?
Guía de contribución
Línea de trabajo
Comienza con la entrada enlazada de PropertyRefExpr en la documentación de la biblioteca estándar de Java y el índice de la biblioteca estándar. Compara cómo se nombran y presentan las clases específicas de Kotlin, incluidas las entradas con los prefijos Kt- y Kotlin. Se considera completado cuando se haya definido una convención o un mecanismo de documentación acordado para identificar las clases y los predicados específicos del lenguaje.
Escrito por el modelo de indexación a partir del texto del issue.
Evaluación
- Stack tecnológico
- java, kotlin
- Área
- documentation
- Tipo de issue
- Documentación
- Dificultad
- 5/5
- Tiempo estimado
- Más de una semana
- Estado de actividad
- Estancado
- Claridad
- Necesita aclaración
- Aptitud para principiantes
- 25/100