private static void getWildcardTypePackageNames ( WildcardType type , Map < String , Class < ? > > packageNames ) { for ( Type boundType : type . getUpperBounds ( ) ) { getTypePackageNames ( boundType , packageNames ) ; } for ( Type boundType : type . getLowerBounds ( ) ) { getTypePackageNames ( boundType , packageNames ) ; } }
Visits wildcard types to collect package names .