After what we found about the expectations for TypeDetails#isResolved() is ORM, I believe that we can simplify our current implementation of it while also ensuring correct semantics:
Class types should always be considered resolved, even java.lang.Object (we already do this for "first level" types, e.g. Object typed members)
Wildcard types with class-typed bounds should be considered resolved (we already do this with a special case for TypeDetails.Kind.CLASS)
Type variables should always be considered not resolved, as the type is always dependent on the specific class' type parameters, regardless of the type variable bounds
After what we found about the expectations for
TypeDetails#isResolved()
is ORM, I believe that we can simplify our current implementation of it while also ensuring correct semantics:java.lang.Object
(we already do this for "first level" types, e.g.Object
typed members)TypeDetails.Kind.CLASS
)