@ SuppressWarnings ( "unchecked" ) public void printType ( Type type ) throws IOException { if ( type instanceof Class < ? > ) { printTypeClass ( ( Class < ? > ) type ) ; } else if ( type instanceof ParameterizedType ) { ParameterizedType parameterizedType = ( ParameterizedType ) type ; printParameterizedType ( parameterizedType ) ; } else if ( type instanceof WildcardType ) { WildcardType wildcardType = ( WildcardType ) type ; printWildcardType ( wildcardType ) ; } else if ( type instanceof TypeVariable < ? > ) { TypeVariable < ? extends GenericDeclaration > typeVariable = ( TypeVariable < ? extends GenericDeclaration > ) type ; printTypeVariable ( typeVariable ) ; } else if ( type instanceof GenericArrayType ) { GenericArrayType genericArrayType = ( GenericArrayType ) type ; printType ( genericArrayType . getGenericComponentType ( ) ) ; print ( "[]" ) ; } else { throw new UnsupportedOperationException ( type . getClass ( ) . getName ( ) + " " + String . valueOf ( type ) ) ; } }
Prints the Java representation of the type