im dealing with a java class that has some generic...
# announcements
m
im dealing with a java class that has some generics that look like
Copy code
public class Thing<SELF extends Thing<SELF>> {
  // some methods that for chaining that return SELF
how can i construct an instance of
Thing
itself?
Copy code
val thing = Thing() // can't infer type
val thing: Thing<*> = Thing() // can't infer type
val thing: Thing<out Thing> = Thing() // need more types
val thing: Thing<out Thing<out Thing>> = Thing() // uh oh, still need more types!