Files
codeql/java/ql/test/library-tests/dataflow/external-models/A.java
2021-02-10 13:25:03 +01:00

63 lines
1004 B
Java

package my.qltest;
public class A {
void foo() {
Object x;
x = src1();
x = src1("");
Sub sub = new Sub();
x = sub.src2();
x = sub.src3();
srcArg(x);
Handler h = srcparam1 -> { };
Handler h2 = new Handler() {
@Override public void handle(Object srcparam2) { }
};
x = taggedSrcMethod();
x = taggedSrcField;
x = srcTwoArg("", "");
}
@Tag
void tagged1(Object taggedMethodParam) {
}
void tagged2(@Tag Object taggedSrcParam) {
}
Object src1() { return null; }
Object src1(String s) { return null; }
Object src2() { return null; }
Object src3() { return null; }
static class Sub extends A {
// inherit src2
@Override Object src3() { return null; }
}
void srcArg(Object src) { }
interface Handler {
void handle(Object src);
}
@interface Tag { }
@Tag
Object taggedSrcMethod() { return null; }
@Tag
Object taggedSrcField;
Object srcTwoArg(String s1, String s2) { return null; }
}