1*f0340d8eSSorin Bascapackage me.tomassetti.symbolsolver.javaparser; 2*f0340d8eSSorin Basca 3*f0340d8eSSorin Bascaimport java.util.Optional; 4*f0340d8eSSorin Bascaimport java.util.List; 5*f0340d8eSSorin Basca 6*f0340d8eSSorin Bascapublic final class Generics { 7*f0340d8eSSorin Basca 8*f0340d8eSSorin Basca Optional<String> s; 9*f0340d8eSSorin Basca Optional<Integer> i; 10*f0340d8eSSorin Basca Optional<Generics> g; 11*f0340d8eSSorin Basca 12*f0340d8eSSorin Basca} 13*f0340d8eSSorin Basca 14*f0340d8eSSorin Bascapublic final class SomeCollection<A> { 15*f0340d8eSSorin Basca 16*f0340d8eSSorin Basca public A a; 17*f0340d8eSSorin Basca public List<A> as; 18*f0340d8eSSorin Basca 19*f0340d8eSSorin Basca public void foo1(){ 20*f0340d8eSSorin Basca new SomeCollection<String>().a; 21*f0340d8eSSorin Basca } 22*f0340d8eSSorin Basca 23*f0340d8eSSorin Basca public void foo2(){ 24*f0340d8eSSorin Basca new SomeCollection<String>().as; 25*f0340d8eSSorin Basca } 26*f0340d8eSSorin Basca 27*f0340d8eSSorin Basca} 28*f0340d8eSSorin Basca 29*f0340d8eSSorin Bascapublic final class GenericMethodCalls { 30*f0340d8eSSorin Basca 31*f0340d8eSSorin Basca public class Base <T> { 32*f0340d8eSSorin Basca 33*f0340d8eSSorin Basca public void callee(T data) { 34*f0340d8eSSorin Basca } 35*f0340d8eSSorin Basca 36*f0340d8eSSorin Basca } 37*f0340d8eSSorin Basca 38*f0340d8eSSorin Basca public class Derived extends Base<String> { 39*f0340d8eSSorin Basca 40*f0340d8eSSorin Basca public void caller() { 41*f0340d8eSSorin Basca callee("test"); 42*f0340d8eSSorin Basca } 43*f0340d8eSSorin Basca 44*f0340d8eSSorin Basca } 45*f0340d8eSSorin Basca 46*f0340d8eSSorin Basca}