Disclaimer: I don't have a whole ton of experience with Java Generics, but my colleagues and I just spent a solid hour trying to decipher an interface that was structured like this:
Interface HasAttributes<a extends HasAttributes<a,b>,
b extends HasAttributesType<b>> extends Identification<a>
What exactly does it mean when an interface generic takes a type parameter that is itself? What does this do?