@@ -11,32 +11,30 @@ abstract class UnusedParameterSharedQuery extends Query { }
11
11
12
12
Query getQuery ( ) { result instanceof UnusedParameterSharedQuery }
13
13
14
- query predicate isMaybeUnusedParameter ( Parameter parameter ) {
14
+ predicate isMaybeUnusedParameter ( Parameter parameter ) {
15
15
parameter .getAnAttribute ( ) .toString ( ) = "maybe_unused"
16
16
}
17
17
18
18
predicate isLambdaParameter ( Parameter parameter ) {
19
19
exists ( LambdaExpression lambda | lambda .getLambdaFunction ( ) .getParameter ( _) = parameter )
20
20
}
21
21
22
- predicate isLambdaMaybeUnusedParameter ( Parameter parameter ) {
23
- exists ( LambdaExpression lambda | lambda .getLambdaFunction ( ) .getParameter ( _) = parameter ) and
24
- isMaybeUnusedParameter ( parameter )
25
- }
26
-
27
- query predicate lambdaExprParamHasAccess ( Parameter parameter ) {
28
- exists ( VariableAccess va | isLambdaParameter ( parameter ) and parameter .getAnAccess ( ) = va )
29
- }
30
-
31
22
query predicate problems ( UnusedParameter p , string message , Function f , string fName ) {
32
23
not isExcluded ( p , getQuery ( ) ) and
33
- (
24
+ if isLambdaParameter ( p )
25
+ then (
26
+ not isMaybeUnusedParameter ( p ) and
27
+ f = p .getFunction ( ) and
28
+ // Virtual functions are covered by a different rule
29
+ not f .isVirtual ( ) and
30
+ message = "Unused parameter '" + p .getName ( ) + "' for function $@." and
31
+ fName = "lambda expression"
32
+ ) else (
34
33
not isMaybeUnusedParameter ( p ) and
35
34
f = p .getFunction ( ) and
36
35
// Virtual functions are covered by a different rule
37
- not f .isVirtual ( )
38
- ) and
39
- message = "Unused parameter '" + p .getName ( ) + "' for function $@." and
40
- // fName = f.getQualifiedName()
41
- fName = "TODO."
36
+ not f .isVirtual ( ) and
37
+ message = "Unused parameter '" + p .getName ( ) + "' for function $@." and
38
+ fName = f .getQualifiedName ( )
39
+ )
42
40
}
0 commit comments