Hi, I'm having trouble creating a method signature and I wonder if it is FaD.
I'm trying to create a pattern for 'declare warning' that identifies all method
calls to classes that do not have the annotation - @PublicAPI. The annotation
is on the referenced class, not its methods.
The pattern I am using is:
declare warning : call(* (!...@publicapi *).*(..)) : "Non public API usage";
In the following case I don't expect a warning but one is generated:
public class Main
{
public static void main(String[] args) {
// Generates warning even though C is @PublicAPI
new C().doIt();
}
}
@PublicAPI
class C implements IC
{
public void doIt() {
}
}
public interface IC
{
public void doIt();
}
Shouldn't the signature match doIt() in C and not the one in IC since only C is
referenced in Main?
Thanks,
Steve
_______________________________________________
aspectj-users mailing list
[email protected]
https://dev.eclipse.org/mailman/listinfo/aspectj-users