mirror of
https://github.com/github/codeql.git
synced 2025-12-24 20:56:33 +01:00
Some files that will change in #1736 have been spared. ./build -j4 target/jars/qlformat find ql/cpp/ql -name "*.ql" -print0 | xargs -0 target/jars/qlformat --input find ql/cpp/ql -name "*.qll" -print0 | xargs -0 target/jars/qlformat --input (cd ql && git checkout 'cpp/ql/src/semmle/code/cpp/ir/implementation/**/*SSA*.qll') buildutils-internal/scripts/pr-checks/sync-identical-files.py --latest
24 lines
709 B
Plaintext
24 lines
709 B
Plaintext
/**
|
|
* @name Poorly documented large function
|
|
* @description Large functions that have no or almost no comments are likely to be too complex to understand and maintain. The larger a function is, the more problematic the lack of comments.
|
|
* @kind problem
|
|
* @problem.severity warning
|
|
* @precision medium
|
|
* @id cpp/poorly-documented-function
|
|
* @tags maintainability
|
|
* documentation
|
|
* statistical
|
|
* non-attributable
|
|
*/
|
|
|
|
import cpp
|
|
|
|
from MetricFunction f, int n
|
|
where
|
|
n = f.getNumberOfLines() and
|
|
n > 100 and
|
|
f.getCommentRatio() <= 0.02 and
|
|
not f.isMultiplyDefined()
|
|
select f,
|
|
"Poorly documented function: fewer than 2% comments for a function of " + n.toString() + " lines."
|