Add UnusedParameter.ql query

This commit is contained in:
Tom Hvitved
2021-01-27 10:47:42 +01:00
parent 9dfea8006d
commit edc6e7eba8

View File

@@ -0,0 +1,27 @@
/**
* @name Unused parameter.
* @description A parameter that is not used later on, or whose value is always overwritten,
* can be removed.
* @kind problem
* @problem.severity warning
* @id rb/unused-parameter
* @tags maintainability
* external/cwe/cwe-563
* @precision low
*/
import ruby
import codeql_ruby.dataflow.SSA
class RelevantParameterVariable extends LocalVariable {
RelevantParameterVariable() {
exists(Parameter p |
this = p.getAVariable() and
not this.getName().charAt(0) = "_"
)
}
}
from RelevantParameterVariable v
where not exists(Ssa::WriteDefinition def | def.getWriteAccess() = v.getDefiningAccess())
select v, "Unused parameter."