mirror of
https://github.com/github/codeql.git
synced 2026-04-28 02:05:14 +02:00
Migrate Java code to separate QL repo.
This commit is contained in:
39
java/ql/src/DeadCode/UselessParameter.qhelp
Normal file
39
java/ql/src/DeadCode/UselessParameter.qhelp
Normal file
@@ -0,0 +1,39 @@
|
||||
<!DOCTYPE qhelp PUBLIC
|
||||
"-//Semmle//qhelp//EN"
|
||||
"qhelp.dtd">
|
||||
<qhelp>
|
||||
<overview>
|
||||
<p>
|
||||
Parameters that are never read in the body of the method, and are not required due to overriding,
|
||||
are useless and can be removed. Useless parameters unnecessarily complicate the interface for that
|
||||
method, and cause a maintenance and development burden.
|
||||
</p>
|
||||
<p>
|
||||
Methods with useless parameters indicate that either the method can be simplified by removing the
|
||||
parameter, or that the method is not using a value it should be using. Parameters of methods that
|
||||
override other methods will not be marked as useless, because they are required. Similarly,
|
||||
parameters of methods that are overridden by other methods are not marked as useless if they are
|
||||
used by one of the overriding methods.
|
||||
</p>
|
||||
</overview>
|
||||
<recommendation>
|
||||
<p>
|
||||
The method should be inspected to determine whether the parameter should be used within the body.
|
||||
If the method is overridden, also consider whether any override methods should be using the
|
||||
parameter. If the parameter is not required, it should be removed.
|
||||
</p>
|
||||
</recommendation>
|
||||
<example>
|
||||
<p>
|
||||
In the following example, we have a method for determining whether a <code>String</code> path
|
||||
is an absolute path:
|
||||
</p>
|
||||
<sample src="UselessParameter.java" />
|
||||
<p>
|
||||
The method uses the parameter <code>path</code> to determine the return value. However, the
|
||||
parameter <code>name</code> is not used within the body of the method. The parameter will be marked
|
||||
as useless, and can be removed from the program.
|
||||
</p>
|
||||
</example>
|
||||
<include src="DeadCodeReferences.qhelp" />
|
||||
</qhelp>
|
||||
Reference in New Issue
Block a user