@@ -475,23 +475,21 @@ SourceSinkInterpretationInput::SourceOrSinkElement interpretElement(
475
475
// Go does not need to distinguish functions with signature
476
476
signature = "" and
477
477
exists ( string p | p = interpretPackage ( pkg ) |
478
- result .asEntity ( ) .( Field ) .hasQualifiedName ( p , type , name ) and
479
- result .hasTypeInfo ( p , type , subtypes )
478
+ result .hasTypeInfo ( p , type , subtypes ) and
479
+ (
480
+ result .asEntity ( ) .( Field ) .hasQualifiedName ( p , type , name ) or
481
+ result .asEntity ( ) .( Method ) .hasQualifiedName ( p , type , name )
482
+ )
480
483
or
481
- exists ( Method m | m .hasQualifiedName ( p , type , name ) |
482
- result .asEntity ( ) = m and
483
- result .hasTypeInfo ( p , type , subtypes )
484
- or
485
- subtypes = true and
486
- // p.type is an interface and we include types which implement it
487
- exists ( Method m2 , string pkg2 , string type2 |
488
- m2 .getReceiverType ( ) .implements ( p , type ) and
489
- m2 .getName ( ) = name and
490
- m2 .getReceiverBaseType ( ) .hasQualifiedName ( pkg2 , type2 )
491
- |
492
- result .asEntity ( ) = m2 and
493
- result .hasTypeInfo ( pkg2 , type2 , subtypes )
494
- )
484
+ subtypes = true and
485
+ // p.type is an interface and we include types which implement it
486
+ exists ( Method m2 , string pkg2 , string type2 |
487
+ m2 .getReceiverType ( ) .implements ( p , type ) and
488
+ m2 .getName ( ) = name and
489
+ m2 .getReceiverBaseType ( ) .hasQualifiedName ( pkg2 , type2 )
490
+ |
491
+ result .asEntity ( ) = m2 and
492
+ result .hasTypeInfo ( pkg2 , type2 , subtypes )
495
493
)
496
494
or
497
495
type = "" and
0 commit comments