github / github/codeql

Java: Deprecate and remove Element::getDoc

オープン
#5,320 コメント 2 件 リアクション 0 件 担当者 0 名 GitHub で見る
question
主要言語
CodeQL
スター
10.1k
フォーク
2.1k
平均マージ
2日 15時間
マージ済み PR(30日)
141

説明

`Element::getDoc` only performs an implicit cast of `this`:
https://github.com/github/codeql/blob/f9973d10aea9c550d91f6607b7cfdd2f543d64ee/java/ql/src/semmle/code/java/Element.qll#L42-L43

- This is probably redundant because you can instead write a cast `element.(Document) ...`
- It is irritating because it suggests that every `Element` can be 'converted' to `Document`, which is not the case
- It causes irritating error messages when used on types which cannot be cast to `Document`:
![Error message screenshot](https://user-images.githubusercontent.com/11685886/109879540-fba75f00-7c75-11eb-86cd-b2775019dc81.png)

Therefore it might be good to deprecate and remove the predicate.

Edit: `Package` is not a good example for an `Element` which does not extend `Document` since it should support documentation, see #5288. Though there are other `Element` subclasses such as `Import` or `Modifier` which cannot be documented in Java.

Relates to #3705

コントリビューションガイド

コントリビューションガイドを開く

評価

この issue はまだ評価されていません。

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。